【问题标题】:how do I remap a url in gwt on appengine如何在 appengine 上重新映射 gwt 中的 url
【发布时间】:2013-02-10 02:43:01
【问题描述】:

我有一个网址:

http://myserver.appspot.com/service/exec?key=0AkG

我将如何重新映射到:

http://myserver.appspot.com/webapp.html?key=0AkG

“key”每次都不一样。

选项: 1)“*.gwt.xml”或“web.xml”——也许可以做地图,但没有找到正确的选项——(过滤器看起来是最好的选择,但需要代码)。 我还尝试创建一个名为“exec”的文件,但它不喜欢缺少“.html”并且浏览器会下载该文件。

2) URL 重写器。很难知道其中哪些适用于 GWT+GAE,目前还没有找到。

【问题讨论】:

    标签: java google-app-engine gwt


    【解决方案1】:

    将此添加到 web.xml,它起作用了:

    <servlet>
    <servlet-name>oldProxy</servlet-name>
    <jsp-file>/proxy.jsp</jsp-file>
    </servlet>
    
    <servlet-mapping>
    <servlet-name>oldProxy</servlet-name>
    <url-pattern>/service/exec</url-pattern>
    </servlet-mapping>
    

    文档:

      <jsp-file>
    

    http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp/web_xml.html#1039287

    【讨论】:

    • 是的,这是处理路径的正常方式,但是servlet-mapping的语法非常有限,你需要一些额外的代码来重写某些情况,或者重定向爬虫等。
    • 这不是最合适的答案,你为什么不选择另一个?
    • @emecedo 我选择了已确认有效的答案。我知道上面的 jsp 文件解决方案有效并且易于设置。我对 URL 重写器没有任何运气。马诺洛给出了一个很好的答案,我确实赞成。我仍然有兴趣确认 GWT 是否与 UrlRewriteFilter 或其他 URL 重写器一起使用。
    • 我可以确认 Manolo 的响应有效,我遇到了同样的问题,在阅读了这个帖子之后,我确实按照教程进行操作,我的应用程序正在使用 UrlRewriterFilter,并且我已经设置了一个长列表使用 .jsp 可能无法维护的重定向
    【解决方案2】:

    您需要一些 URL 重写器。

    GAE运行jetty,它有自己的rewriter handler,但是由于它seems no possible to extend他们的jetty.xml配置出于安全考虑,你需要在你的web.xml中配置一个过滤器

    互联网上有很多过滤器示例,但我发现易于设置和配置的是UrlRewriteFilter

    你有一个tutorial 在 GAE 中设置 UrlRewriterFilter

    【讨论】:

    • 你知道UrlRewriteFilter.适用于 GWT + GAE?我尝试了 pretyfaces,但没有让它工作。一些人在这里建议 URL 重写器:stackoverflow.com/questions/2297056/…,但很难知道 GWT + GAE 上哪些工作。
    • 是的,UrlRewriteFilter 在 GAE 中工作,请参阅:aaronjlynch.com/2009/11/25/url-rewriting-on-google-app-engine
    • 和 GWT? - 我怀疑是 GWT 导致了 pretyfaces 的问题。
    • 好吧,严格来说,GWT 是浏览器端的 JS。 GWT 添加了几个服务器端实用程序,以便纯 java 项目更容易通过线路(RPC、RF)传递对象,但也有数百个 gwt 应用程序使用 python、ruby、php。除非某种类路径问题(不同版本的库等),否则我看不到服务器端对漂亮面孔的任何干扰。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    • 2012-05-04
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 2019-04-15
    相关资源
    最近更新 更多