用于url重写的servlet过滤器使gwt页面获得404

时间:2012-03-22 09:49:44

标签: gwt url-rewriting servlet-filters

我有一个GWT应用程序/application.html

为了方便访问(和SEO)我想让网址重写像/station/fr/foo映射

我正在尝试使用像

这样声明的 servlet过滤器
  

url-pattern : /station/*

在此过滤器中,我拆分了部分网址以构建目标网址的参数:

我做了:

  

request.getRequestDispatcher( targetUrl ).forward( request, response);

但它似乎尝试访问/station/Application.html然后访问404

[===========从这里编辑===========]

嗯,知道,因为这个问题,我理解了一些事情:html页面已经到达,但是试图在/station/中加载他的资源(css,js,img)

此行为由浏览器(!)

完成

如果我<base href="http://servername/">它有效,但我不能让dev模式工作了......

有没有办法透明地修改html源中更改路径的响应?

1 个答案:

答案 0 :(得分:0)

您正在寻找在托管码头模式和tomcat /部署模式下修复应用路径的方法 - 尝试https://groups.google.com/d/topic/google-web-toolkit/a8OsRmMSaMg/discussion

<?xml version="1.0"  encoding="UTF-8"?> 
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" 
"http://jetty.mortbay.org/configure.dtd"> 
<Configure class="org.mortbay.jetty.webapp.WebAppContext"> 

        <Set name="contextPath">/yourapp</Set> 

</Configure>