如何使用primefaces和prettyfaces?

时间:2013-07-26 09:50:29

标签: jsf-2 primefaces prettyfaces

当Primefaces和漂亮的脸一起使用时,Primefaces不起作用。 我添加了流动的jar:

prettyfaces-jsf2-3.3.3.jar
primefaces-4.0-20130605.174828-3.jar

我的web.xml代码:

<filter>
    <filter-name>Pretty Filter</filter-name>
    <filter-class>com.ocpsoft.pretty.PrettyFilter</filter-class>
</filter>

<filter-mapping> 
    <filter-name>Pretty Filter</filter-name> 
    <url-pattern>/*</url-pattern> 
    <dispatcher>FORWARD</dispatcher> 
    <dispatcher>REQUEST</dispatcher> 
    <dispatcher>ERROR</dispatcher>
</filter-mapping> 

我的pretty-config.xml代码:

<rewrite match="^[^(/primefaces_resource/)|^(javascript)]" trailingSlash="append"  toCase="lowercase" redirect="301"/>
<url-mapping id="home"> 
    <pattern value="/" /> 
    <view-id value="/" />
</url-mapping> 

这张图片是whithou prittyface(jar和configure): enter image description here

当我添加漂亮的脸罐。然后流动的视图: enter image description here

我想更改网址。

示例:

  (http://localhost:8084/AntSchoolMS/faces/index.xhtml)

我希望将其更改为

(http://localhost:8084/AntSchoolMS/)

请帮帮我。

3 个答案:

答案 0 :(得分:2)

我使用primefaces 3.5和漂亮的脸3.3.3并且正常工作。 web.xml中的配置似乎没问题。确保将pretty-config.xml也放在WEB-INF中。 关于你发布的pretty-config:在模式和view-id相同的情况下有一个url-mapping没有任何意义,所以删除它。 我也没有那个重写规则,我有几个映射如下:

<url-mapping id="login">
    <pattern value="/login/">
    <view-id value="/login.jsf" />
</url-mapping>

您是否尝试删除重写规则以查看会发生什么?

答案 1 :(得分:1)

我一直在使用这两个,他们按预期工作。我的项目使用3.5版本的primefaces和PrettyFaces 3.3.3。

在我的web.xml中,我不需要像你那样注册任何过滤器。

我也会尝试删除重写规则,正如达米安所暗示的那样。

答案 2 :(得分:0)

此外,我建议升级到最新版本的PrettyFaces - 请参阅http://ocpsoft.org/prettyfaces/