Recursion Struts2用于友好url的递归通配符映射 EN {1} /pages/article/search_article.jsp EN {2} /pages/article/search_article.jsp EN {3} /pages/article/search_article.jsp
所以,我有一种情况,类别可以无限制嵌套。 当前的struts配置文件对于3级子类别非常有效Recursion Struts2用于友好url的递归通配符映射 EN {1} /pages/article/search_article.jsp EN {2} /pages/article/search_article.jsp EN {3} /pages/article/search_article.jsp,recursion,struts2,wildcard,friendly-url,Recursion,Struts2,Wildcard,Friendly Url,所以,我有一种情况,类别可以无限制嵌套。 当前的struts配置文件对于3级子类别非常有效 我可以让这段代码有点“递归”以覆盖无限级别的子类别吗?完全未经测试,但我会尝试以下方法: <action name="en/articles/categories/*" class="it.cms.article.action.SearchArticleCustom"> <param name="locale">en</param>
我可以让这段代码有点“递归”以覆盖无限级别的子类别吗?完全未经测试,但我会尝试以下方法:
<action name="en/articles/categories/*" class="it.cms.article.action.SearchArticleCustom">
<param name="locale">en</param>
<param name="categoryFriendlyUrl">{1}</param>
<result name="success">/pages/article/search_article.jsp</result>
</action>
<action name="en/articles/categories/*/*" class="it.cms.article.action.SearchArticleCustom">
<param name="locale">en</param>
<param name="categoryFriendlyUrl">{2}</param>
<result name="success">/pages/article/search_article.jsp</result>
</action>
<action name="en/articles/categories/*/*/*" class="it.cms.article.action.SearchArticleCustom">
<param name="locale">en</param>
<param name="categoryFriendlyUrl">{3}</param>
<result name="success">/pages/article/search_article.jsp</result>
</action>
:
**
:匹配零个或多个字符,包括斜杠(“/”)字符
您可以尝试使用编写只选择url最后一部分的正则表达式,并使用regex
patternMatcher
或创建自定义patternMatcher
。谢谢,这就是我要找的。
<action name = "en/articles/categories**/*"
class = "it.cms.article.action.SearchArticleCustom">
<param name = "locale">en</param>
<param name = "categoryFriendlyUrl">{2}</param>
<result name = "success">/pages/article/search_article.jsp</result>
</action>