简单的问题,也许有人知道:
在GWT devmode中,我的网址如下所示:http://myserver/myapp/myservice
当我运行'ant war'并在tomcat上部署那场战争时,他们会神秘地改为:http://myserver/myapp/myapp/myservice
一切仍然有效,但显然网址更加丑陋。我想保留devmode中使用的URL。任何信息都表示赞赏,谢谢。
-tjw
答案 0 :(得分:1)
将Web服务部署为ROOT.war,而不是myapp.war,因为第一个'myapp'是Web应用程序上下文路径,'myapp / myservice'是Web应用程序内部的路径。
答案 1 :(得分:0)
将web.xml
中的映射更改为/
而不是/myapp/
,并将您的应用部署为myapp.war
或将战争部署为Root.war
< / p>
答案 2 :(得分:0)
好的,我有一个解决方案。很多人都在网上遇到这个问题,我决定回答我自己的问题。关键是在@RemoteServiceRelativePath
接口文件中使用RemoteService
。例如,为了解决我原来的问题,我会像这样注释我的RemoteService
界面:
@RemoteServiceRelativePath("../myservice")
这样,服务URL前面的任何路径都无关紧要。现在在web.xml
,而不是/myapp/myservice
作为url-pattern
,我只使用/myservice
。现在它可以在GWT的devmode和Tomcat中运行,无需进一步修改。