5

私が取り組んでいるプロジェクトは非常に具体的です。SAP バックエンドで GWT を使用します。次の構成を使用して開発モードを実行します (プログラムの引数として。IntelliJ IDEA を使用してプロジェクトを直接実行します)。

-noserver -logLevel INFO -startupUrl http://server-url:8000/aaa -whitelist ^http[:][/][/]server-url[.]eu[:]8000/aaa com.company.project.main.Main

ローカル サーバー ( -noserver) を使用していないことに注意してください。

Super Dev Mode に慣れると、GWT Web Mode と同様に機能することがわかりました。つまり、JavaScript をコンパイルし (コンパイル先のフォルダーを指定できます)、そのスクリプトをホストしてコード サーバーを実行します。

プロジェクトの仕様により、コンパイルされた JavaScript は WebDav 経由で maven を使用してリモート サーバーにデプロイされます。そのため、パラメーターとして指定するだけ-workDirでは、スクリプトはリモート サーバーにデプロイされません。また、(少なくとも現時点では)そのserver-urlアドレスで Java サーバーを実行することもできません。

この状況でスーパー開発モードを使用できますか?

4

2 に答える 2

9

はい、できます。

EDIT 2016-11-27:-launcherDir webpack のようなプロキシを使用して、サーバーに書き込む必要なく -style SuperDevMode を使用できる devserver を構築しました: https://github.com/tbroyer/gwt-devserver

編集:いくつかの問題があります。遅延バインディング プロパティ。SDM の推奨される使用法 (GWT 2.7 以降) は-launcherDir、ローカル サーバーを使用することです。

SuperDevMode は、DevMode with-noserverのように機能します。つまり、アプリをサーバーに少なくとも 1 回デプロイする必要があります。SuperDevMode の場合は、xsiframeリンカーとdevModeRedirectEnabledプロパティを に設定してコンパイルおよびデプロイする必要があることを意味しますtrue

次に、マシンで SuperDevMode を実行し、ブックマークレットがまだ作成されていない場合は作成し、リモート サーバーからアプリをロードして、Dev Mode Onブックマークレットをクリックします。

これにより、ブラウザーに何かが保存されるsessionStorageため、ページをリロードすると、リモートサーバーではなく、マシンで実行されている SuperDevMode から順列が読み込まれます。

SuperDevMode の仕組みの詳細: http://blog.ltgt.net/how-does-gwts-super-dev-mode-work/

于 2012-12-12T14:51:03.103 に答える
0

今のところ、考えられる解決策は 1 つだけです。それは、gwt-codeserver.jar何らかの方法で を SAP サーバー (たとえば、アドレスhttp://server-url:8000/bbb) で実行し、すべての要求を にリダイレクトするサーブレットを作成することhttp://server-url:8000/aaaです。ただし、これを実装するのは非常に簡単ではありません。SAP サーバーには、ユーザーが最初にログオン ページを表示し、次に生成されたセッション固有の URL にリダイレクトされるという「トリッキーな」認証メカニズムがあります。

他のアイデアは大歓迎です。

于 2012-12-12T13:55:10.590 に答える