我有一个项目,在其中,我使用漂亮的面孔,以url重写。这是漂亮的config.xml。
<url-mapping parentId="level2" id="level3" >
<pattern value="/#{bean.urlLiv3 }">
</pattern>
<view-id value="/index.xhtml" />
<action>#{bean.loadLiv3}</action>
</url-mapping>
<url-mapping parentId="level2" id="level2" >
<pattern value="/#{bean.urlLiv2}">
</pattern>
<view-id value="/index.xhtml" />
<action>#{bean.loadLiv2}</action>
</url-mapping>
<url-mapping parentId="main" id="level1" >
<pattern value="#{ /.*-.*/ bean.urlLiv1 }" ></pattern>
<view-id value="/index.xhtml" />
<action>#{bean.loadLiv1}</action>
</url-mapping>
<url-mapping id="main">
<pattern value="/" />
<view-id value="/index.xhtml" />
<action>#{bean.loadLiv0}</action>
</url-mapping> “”它一直持续到5级。如果没有级别1上的正则表达式/.*-.*/,它对每个级别都能正常工作,但是当我添加它时,我在试图在第3、4和5级上导航时会出现一个错误。
Error parsing url: </urlliv1-8/urlliv2-43/urlliv3-20>, a parameter did not match compiled segment in pattern: /#{ /.*-.*/ bean.urlLiv1 }/#{bean.urlLiv2}/#{ bean.urlLiv3 }
有人知道我为什么会犯这个错误吗?谢谢
发布于 2020-08-31 04:41:11
抱歉,错误消息有点混乱。这很可能是因为您在urlLiv1的正则表达式模式中使用了urlLiv1。
.*或.的一个主要问题是这些模式将匹配/字符。尝试使用类似的方法:[^/]* of the . matcher。
https://stackoverflow.com/questions/63410814
复制相似问题