1

GWT をフロント エンドとして使用するエンタープライズ アプリケーションに取り組んでいます。複数のモジュールがあり、個々のモジュールを個別の war ファイルとして作成したいと考えています。同じ Web サーバーにデプロイすると、単一の Web アプリケーションのように動作するため、ユーザーは各モジュールにアクセスするために URL を変更する必要がありません。

質問が明確であることを願っています。誰でもこれで私を案内してもらえますか。

4

4 に答える 4

2

私はGithubでデモプロジェクトを作成しました。ここでは、開発プラグイン指向システムの作業アプローチについて説明しています:https ://github.com/domax/gwt-dynamic-plugins

このアプローチについてもっとお気軽にお問い合わせください-あなたの興味は私がそれに取り組み続けることを刺激します;]。

于 2013-03-16T13:18:28.337 に答える
1

最も簡単な解決策は、複数のモジュールを個別の gwt アプリケーションとしてコンパイルし、それらを同じ war にパッケージ化することです。

展開戦争では、 multiapp.war になります

戦争のレイアウトは -

webapps
    -> multiapp
     --> module1gwtapp/
     --> module2gwtapp/
     --> module3gwtapp/
     --> styles/images
     --> styles/css
     --> WEB-INF/web.xml
     --> WEB-INF/lib
     --> WEB-INF/classes

PRO

  1. このアプローチでは、WEB-INF/lib jar を複数の gwt アプリで共有することにより、依存関係 jar の重複を回避します。
  2. このアプローチでは、複数の gwt アプリでそれらを共有することにより、CSS/画像の重複を回避します。
  3. セッション管理は、複数のアプリで同じになります。

短所

  1. アプリ間のナビゲーションは、アプリのリロードを意味します。
  2. 履歴管理は少し面倒です。
于 2013-03-16T08:03:03.033 に答える
0

私が GWT で作業した限り、それは不可能です (私が間違っている可能性があります)。1 つの webApp が持つことができる war ファイルは 1 つだけです。

ただし、複数のモジュールをマージして、単一のモジュールに含めることができます。同じパッケージに対して複数のエントリポイントを持つこともできますが、アプリケーションごとに 1 つの war しか存在できません。

複数の.warファイルが必要な場合は、プロジェクトを複数のプロジェクトに分離し、それらを個別にビルドして、壊れないことを願っています。

于 2013-03-16T07:15:25.223 に答える
0

アプリに応じてさまざまな可能性があります。

各アプリに独自のサーバー側サービスが必要な場合は、各 .war を個別に展開する必要があります。次に、Apache のような Web サーバーをフロントエンドとして使用して、書き換えと http-proxy ルールを使用してすべてのアプリケーションをリンクできます。この場合、アプリを異なるサーバーに配置し、クラスターとバランシングを構成することもできます。

アプリが単なるクライアントのものである場合は、すべての war を解凍し (jar または unzip コマンドを使用)、すべての静的ファイルをどこにでも置くことができます: Web サーバーまたは一意の .war.

maven を使用して、すべてのモジュールを最終的な .war に参加させることもできます。基本的な手順は、maven-dependency-plugin の unpack-dependencies ゴールを使用して、他のすべてのモジュールに参加する新しいモジュールを作成することです。その後、gwt-maven プラグインを適切に構成するすべての gwt モジュールをコンパイルできます。

于 2013-03-16T08:27:55.387 に答える