2

私はオンラインで見つけたいくつかの例を試し、HTTPリクエストを使用してGWT(Eclipse経由)で開発されたWebアプリケーションによって呼び出されるPHPスクリプトを使用しています。これが機能するようになったら、自分のアプリケーションにテクニックを適用できると思います。しかし、私はこれを機能させるためにひどい時間を過ごしています。私が成功した最も近いものは、https: //developers.google.com/web-toolkit/doc/2.1/tutorial/gettingstartedにあるStockWatcherアプリケーションを使用することです(JSON-PHPの実装から始めて例を実行しましたここhttps://developers.google.com/web-toolkit/doc/2.1/tutorial/JSONphp

StockWatcherの例では、PHPスクリプトを「war」ディレクトリに配置しています。基本的な例から始めると、次のスニペットでURL文字列が定義されています(注:qの値は、 XXX = localhost、YYY = 127.0.0.1:8888の下のコードスニペットの後に追加されます)

private static final String JSON_URL = GWT.getModuleBaseURL() + "stockPrices?q=";
String url = JSON_URL;

これはURLを次のように与えます

"http://_YYY_/stockwatcher/stockPrices?q=";

PHPスクリプトを.../war / stockwatcherディレクトリに移動しても、404エラーコードが表示されます。

URLをハードコーディングした場合:

url = YYY / stockPrices.php?q = "> http:// YYY /stockPrices.php?q=;

PHPスクリプトは見つかりましたが、スクリプトファイルはクライアントルーチンにエコーバックされます。クライアントルーチンがJSONを予期しているため、これにより例外が発生します。

URLを次のように変更すると

url = http://_XXX_/StockWatcher/stockPrices.php?q=;

プロジェクトを更新し、「war」ディレクトリの内容をC:\ wamp \ www \ StockWatcherにコピーして、ブラウザにXXX / stockwatcher / stockwatcher.html "> http:// XXX /stockwatcher/stockwatcher.htmlと入力します(I Chromeを使用しています)、すべてが魅力のように機能します(PCでWampserverを実行しています)。

本番システムでWampserverを使用している可能性がありますが、それでもEclipse内でデバッグしたいと思います。EclipseとGWTプラグインに付属する組み込みサーバーのJettyはPHPでは機能しませんか?

どうもありがとう、ビル

4

1 に答える 1

2

アプリをサーブレットコンテナにデプロイしない場合は、DevModeのサーブレットコンテナ内でPHPスクリプトを実行してみる理由はまったくありません。

やるべきことは:

  1. WAMPサーバーをwarフォルダーにポイントするか、DevModeとCompiler-warをWAMPサーバーが提供するフォルダーにポイントします。
  2. Jettyを埋め込まずにDevModeを起動します。WAMPサーバーへのURLを(Eclipseから、実行→Webアプリケーション(外部​​サーバーで実行)を使用して)渡し-noserver、使用します。http://-startupUrl

https://developers.google.com/web-toolkit/doc/latest/DevGuideCompilingAndDebugging#How_do_I_use_my_own_server_in_development_mode_instead_of_GWT%27sを参照してください

于 2013-02-13T09:50:18.637 に答える