【问题标题】:tuckey urlrewrite not working for query variable in url-rewritetukey urlrewrite 不适用于 url-rewrite 中的查询变量
【发布时间】:2013-08-11 20:50:55
【问题描述】:

我在 Glassfish 上的 JSF 中使用 tukey urlrewrite 过滤器来获取干净的 url。 以下是过滤器的规则(不起作用):

    <rule>
        <from>^/user/(.*)$</from>
        <to>%{context-path}/faces/testUser.xhtml?username=$1</to>
    </rule>

我收到 HTTP-404,请求的资源 () 不可用。

当我按如下方式给出“to”标签时过滤器起作用(即 type=redirect):

   <to type="redirect">%{context-path}/faces/testUser.xhtml?username=$1</to>

另一条规则在转发时工作得很好:

    <rule> 
        <from>/home</from>
        <to>faces/index.xhtml</to>
    </rule>

以下是web.xml中的过滤器配置

<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>

任何想法,如何解决?

【问题讨论】:

    标签: java jsf jakarta-ee url-rewriting glassfish


    【解决方案1】:

    当我如下更改规则时,它工作正常:

        <rule>
            <from>^/user/(.*)$</from>
            <to>/faces/testUser.xhtml?username=$1</to>
        </rule>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-18
      • 1970-01-01
      • 2012-03-27
      相关资源
      最近更新 更多