我一直在尝试几个我在网上找到的示例,其中有一个PHP脚本,由使用GWT(通过Eclipse)使用HTTP请求开发的Web应用程序调用。我想,一旦我开始工作,我可以将这些技术应用到我自己的应用程序中。但是,我正在努力让它发挥作用。我成功的最接近的是在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;
将网址设为
"http://_YYY_/stockwatcher/stockPrices?q=";
我得到404错误代码,即使我将PHP脚本移动到... / war / stockwatcher目录。
如果我对网址进行硬编码:
url = YYY / stockPrices.php?q =“> http:// YYY /stockPrices.php?q=;
找到PHP脚本,但脚本文件只是回显客户端例程。这随后会导致异常,因为客户端例程需要JSON。
现在,如果我将网址更改为
url = http://_XXX_/StockWatcher/stockPrices.php?q=;
刷新项目,将“war”目录的内容复制到C:\ wamp \ www \ StockWatcher,然后输入XXX / stockwatcher / stockwatcher.html“> http:// XXX /stockwatcher/stockwatcher.html在我的浏览器中(我正在使用Chrome),然后一切都像魅力(我在我的电脑上运行Wampserver)。
虽然我可能在生产系统中使用Wampserver,但我还是想在Eclipse中进行调试。 Eclipse和GWT插件附带的内置服务器Jetty不能与PHP一起使用吗?
非常感谢, 比尔
答案 0 :(得分:2)
如果您不打算在servlet容器中部署应用程序,那么您绝对没有理由尝试在DevMode的servlet容器中运行PHP脚本。
要做的是:
war
文件夹,或者将DevMode和编译器-war
指向您的WAMP服务器所服务的某个文件夹-noserver
并将http://
URL用作WAMP服务器作为-startupUrl
(来自Eclipse,使用运行方式→Web应用程序(在外部服务器上运行))