当路径包含两个级别时,Prettyfaces奇怪的行为

时间:2013-06-14 22:12:08

标签: jsf-2 prettyfaces

我从Prettyfaces 3.3.3和JSF 2.1.7中得到了一个非常奇怪的行为。
事实上,当我进行这种映射时:

<url-mapping id="admin-home">
    <pattern value="/adminpage" />
    <view-id value="pages/admin/page.jsf" />
</url-mapping>

一切都按预期工作,当我致电pretty:admin-home时,重定向已完成,我得到正确的页面。
现在当我使用这个映射时:

<url-mapping id="admin-home">
    <pattern value="/admin/home" />
    <view-id value="pages/admin/page.jsf" />
</url-mapping>

注意adminhome是分开的。调用pretty:admin-home时,我发现404未找到错误。它告诉我,找不到的页面是:

admin/pages/admin/page.jsp

1 个答案:

答案 0 :(得分:0)

我认为这是因为您的viewId不以/字符开头。我的猜测是,当PrettyFaces将请求转发给viewId时,转发将相对于请求的URL发送。这可以解释404错误。

所以请尝试使用它:

<url-mapping id="admin-home">
    <pattern value="/admin/home" />
    <view-id value="/pages/admin/page.jsf" />
</url-mapping>