1

我在 WGT 中制作了一个简单的登录应用程序,它要求用户输入用户名和密码,验证服务器端“硬编码”(不涉及数据库)的详细信息,然后显示一个包含一些信息的简单表格......

当我在 Eclipse 中运行应用程序时 - 一切正常,但在我执行到 WAR 文件并在浏览器中运行 HTML 文件后,单击登录按钮后,我得到:

 "Unable to initiate the asynchronous service invocation (GreetingService_Proxy.greetServer) -- check the network connection"

我阅读了该问题并在 moudle.xml 文件中添加了一些内容:

<inherits name="com.google.gwt.core.Core" />
<add-linker name="xs" />

但现在我收到了这个错误:在 IE9 上:

URL file:///C:/Users/meital/Desktop/workspace2/New%20folder/meitalgwt/greet 无效或违反同源安全限制

在火狐上:

(NS_ERROR_DOM_BAD_URI): Access to restricted URI denied code: 1012 INDEX_SIZE_ERR: 1 DOMSTRING_SIZE_ERR: 2 HIERARCHY_REQUEST_ERR: 3 WRONG_DOCUMENT_ERR: 4 INVALID_CHARACTER_ERR: 5 NO_DATA_ALLOWED_ERR: 6 NO_MODIFICATION_ALLOWED_ERR: 7 NOT_FOUND_ERR: 8 NOT_SUPPORTED_ERR: 9 INUSE_ATTRIBUTE_ERR: 10 INVALID_STATE_ERR: 11 SYNTAX_ERR: 12 INVALID_MODIFICATION_ERR: 13 NAMESPACE_ERR: 14 INVALID_ACCESS_ERR: 15 VALIDATION_ERR: 16 TYPE_MISMATCH_ERR: 17 SECURITY_ERR: 18 NETWORK_ERR: 19 ABORT_ERR: 20 URL_MISMATCH_ERR: 21 QUOTA_EXCEEDED_ERR: 22 TIMEOUT_ERR: 23 INVALID_NODE_TYPE_ERR: 24 DATA_CLONE_ERR: 25 result: 2152924148 filename: file:///C:/Users/meital/Desktop/workspace2/New%20folder/meitalgwt/012B81D90198FC382E15B5001E0AD8FE.cache.js lineNumber: 579 columnNumber: 0 inner: null data: null

有谁知道会是什么?

重要的是说我是 GWT 的新手,所以请在你的回答中包括我可能错过的任何基本步骤......

谢谢!!!

4

1 回答 1

0

问题是您没有运行服务器,而只是尝试从硬盘驱动器上的文件运行整个应用程序。您使用的xs链接器允许您从目录运行 JavaScript,但如果没有服务器,则异步服务调用无法与之对话。

相反,考虑使用 Tomcat 或 Jetty 作为服务器,在其中部署你的战争,并在你的计算机上启动它们。完成此操作后,xs将不再需要启用链接器的链接器行。

查看 GWT 文档中的 Deploying 页面了解更多信息 - 您不仅需要部署到服务器,还需要部署到可以运行 RPC 服务的服务器:https ://developers.google.com/web-toolkit/doc /latest/DevGuideDeploying#DevGuideDeployingServletContainerUsingRPC

当然还有另一种选择,但它可能对您没有帮助:删除异步服务调用。如果您不调用服务器,那么您不需要任何软件运行该服务。

于 2012-10-05T23:46:58.983 回答