3

GAE にデプロイされる GWT アプリの構築を計画しています。通常の (GWT) Web クライアントに加えて、サーバー側のコードは、Web アプリだけでなく他のクライアントからの要求にも対応します。具体的には、HTTP 準拠のクライアントからアクセスできる RESTful API をホストし、iOS および Android のネイティブ アプリからのリクエストにも対応します。

GWT に関する私の理解が正しければ、クライアント側のコード (アプリがサーバーに返す AJAX 要求を含む) とサーバー側の要求ハンドラーの両方をコード化するのはあなたの仕事です。

なぜ同じ WAR 内に Web クライアントと Web サーバーをパッケージ化する必要があるのでしょうか? これにより、バックエンドに変更を加えるたびに、クライアント側のコードを (本質的に) 再デプロイする必要があります。おそらく大したことではありませんが、そうする必要がなければ、「関心の分離」を尊重したいと思います。

だから私は尋ねます:それを使用するクライアントに純粋なHTML / JS / CSSを返すだけで、JavaのないWARをGAEに本質的に展開し、サーバー側を展開する方法はありますか?独自のWAR、および2つをどのようにリンクしますか? 前もって感謝します!

4

3 に答える 3

1

WAR はサーバー側専用です。これには、クライアントとサーバーの間で渡されるオブジェクトをシリアライズするために必要なクライアント側のクラスが含まれています。明らかに、これらのオブジェクトを処理するには、両方の側で同じオブジェクトの実装が必要です。

2 つの懸念事項を分離することで労力や開発時間を節約できるとは思いませんが、どうしてもそうしたい場合は、GWT-RPC 以外のものを使用してクライアント/サーバーのやり取りをやり直すことができます。たとえば、JSON です。その道をたどりたい場合の選択肢については、https://developers.google.com/web-toolkit/doc/latest/DevGuideServerCommunication#DevGuideHttpRequestsを参照してください。

于 2012-10-20T21:13:48.210 に答える
0

いいえ、私の知る限り、GAE で部分的な更新を行うことはできません。つまり、プロジェクトの一部を GAE インスタンスにアップロードしてから、別の部分を別のアップロードでアップロードすることはできません (したがって、HTNML/JS/CSS を Java クラスに分離します)。

于 2012-10-21T03:48:19.030 に答える