在tomcat

时间:2015-08-13 18:22:09

标签: java tomcat web url-rewriting

我正在使用Tomcat 8和UrlReWriteFiler。我有一个奇怪的请求,没有太多细节,我需要启用运行在本地计算机上的tomcat将localhost:8080/project/..路由到localhost:8080/project/data

我正在尝试运行一个hello world示例。我意识到这是一个非标准要求,但问题来自于在不同环境中运行插件的应用程序,该文件在相对于当前文件夹".."的文件夹中查找文件。

我希望通过路由从localhost:8080/project/..localhost:8080/project/data的任何内容来启用本地计算机上的插件开发。

urlwrite.xml:

<urlrewrite>
    <rule>
        <name>Dev Development</name>
        <condition name="host" operator="equal">^localhost:8080/.*/..</condition>
        <from>^localhost:8080/(.*)/\.\.$</from>
        <to type="permanent-redirect" last="true">http://localhost:8080/$1/data</to>
    </rule>
</urlrewrite>

的web.xml:

<web-app id="simple" version="2.4">

  <filter>
      <filter-name>UrlRewriteFilter</filter-name>
      <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>UrlRewriteFilter</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
  </filter-mapping> 

   <welcome-file-list>
        <welcome-file>hello.html</welcome-file>
    </welcome-file-list> 
    <servlet>
        <servlet-name>Hello</servlet-name>
        <servlet-class>Hello</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Hello</servlet-name>
        <url-pattern>/data</url-pattern>
    </servlet-mapping>
</web-app>

0 个答案:

没有答案