2009-07-29 24 views
0

Jboss Application Serverで動作するFaceletとJava Server Facesを使用したSpringベースのアプリケーションを開発しています。開発フレームワークとして、Web標準ツールを統合するEclipse Ganymede Platform Version:3.4.2を使用しています。したがって、Jboss 5.0のような異なるサーバーをサポートしています。Eclipse内のJbossでアプリケーションを再デプロイする方法は?

Eclipse内のJbossに自分のアプリケーションをデプロイしています。最初は正常に動作しますが、変更を加えてアプリケーションを再発行しようとすると、それが取得されないため、サーバーを再起動する必要があります。 JBossを再起動する必要があるたびに約1分かかりますので、これは非常に面倒です。

それで、問題は、再起動せずにJbossにアプリケーションを再デプロイする手段があることです。

答えて

0

Eclipseを使用してJBoss(開始/停止)を管理する場合は、Eclipseを直接再デプロイできる必要があります。

deployディレクトリにデプロイしている場合は、元のwar/earで実行すると再デプロイされます。 OutOfMemoryErrorsが発生するかもしれないあなたのアプリケーションのサイズに依存することに注意してください。

私たちが行うことは(いつもうまくいくわけではありませんが)、耳を配置し、JPDAを使ってリモートでJBossとデバッグを実行することです。変更を加えると(メソッドのシグネチャを変更しない限り)、クラスを変更したクラスにホットスワップします。

0

WARファイルをデプロイする場合、最も簡単な方法はeclipseで 'servers'プラグインを使用することです。 MyEclipseは事前設定されています。

サーブレットコンテナを選択できるようになり、Eclipse内で完全な制御が可能になります。 ANTファイルを必要とせず、Eclipse IDEから離れる必要があります。

この設定が機能するには、プロジェクトが「Webプロジェクト」である必要があります。

ウェブプロジェクトを設定したら、サーバウィンドウの設定ボタンを押してウェブプロジェクトを選択して追加します。

次に、サーバー画面で実行/デバッグボタンを押します。

ホット・デプロイが動作するためには、ソース・クラスパスがターゲット/クラスではなくWEB-INF/classesを指していることを確認する必要があります。 mavenプラグインeclipse:eclipseはこれをリセットしますので注意してください。

+0

これは私がやっていることですが、私がJbossで再びアプリケーションを実行すると、 'destructing singletons ...'のようなメッセージが表示され、Webアプリケーションが動作しなくなります。一方、再デプロイしようとすると、非常に多くのリソースを消費し始めるので、bashからjbossプロセスを強制終了します。それはクレイジーです! – markitus82

+0

2つのこと:(1)Tomcatに展開して、同様の問題が発生していないかどうか確認しましたか?私はあなたがEJBコンテナを必要としないと仮定します。 (2)tomcat/jbossに対してうまく動作するかどうかを確認するために、非常に簡単な新しいプロジェクトを設定しようとしましたか? – JamesC

+0

Jbossを使用するという事実はクライアントの要求事項であり、変更はありません。以前のプロジェクトでは、アプリケーションサーバーとしてTomcatを使用しましたが、アプリケーションの再デプロイ時に問題はありませんでした。それは不思議ですが、ここでは3人がこのプロジェクトに手を携え、Jbossアプリケーションサーバーで同じ問題を経験しています。 – markitus82

1

JBossツールプラグインの使用を検討してください。 EclipseとJBossを使用した開発経験が大幅に向上します。 http://www.jboss.org/tools

関連する問題