RichFaces 3.3.3 和 JSF 2.0 工作示例
Posted
技术标签:
【中文标题】RichFaces 3.3.3 和 JSF 2.0 工作示例【英文标题】:RichFaces 3.3.3 with JSF 2.0 working example 【发布时间】:2011-03-29 20:54:08 【问题描述】:我对 JSF 很陌生,我正在寻找 JSF 2.0 的纯配置和 RichFaces 3.3.3.Final。 JBoss 网站上的文档适用于 JSF 1.2。我也找到了这个jboss article,但示例应用程序有很多配置。
如果您已成功使 RichFaces 和 JSF 2 工作,请分享您的配置。 谢谢。
【问题讨论】:
【参考方案1】:好吧,我发现他说了“很多配置”,因为这不仅仅是他试图对他的项目做的事情,我也有同样的问题,我需要运行一个带有 Richfaces 3.3.3 的 JSF 1.2 应用程序玻璃鱼 3;但应用程序很大,无法更改 Richfaces 版本;我们只需要像在 gf3 中运行的应用程序一样,只需进行最少的更改。
【讨论】:
【参考方案2】:您必须添加最新的facelets、richfaces 3.3.3 和jsf 2.x 库。 这是我用于我的项目的 web.xml 配置:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</param-name>
<param-value>true</param-value>
</context-param>
<!--Configuration for Richfaces-->
<filter>
<display-name>RichFaces Filter</display-name>
<filter-name>richfaces</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
</filter>
<filter-mapping>
<filter-name>richfaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
<!--End of the configuration part for Richfaces-->
<!--Configuration for Facelets-->
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.jsp</param-value>
</context-param>
<context-param>
<param-name>facelets.RECREATE_VALUE_EXPRESSION_ON_BUILD_BEFORE_RESTORE</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>facelets.VIEW_MAPPINGS</param-name>
<param-value>*.xhtml</param-value>
</context-param>
<context-param>
<param-name>facelets.SKIP_COMMENTS</param-name>
<param-value>true</param-value>
</context-param>
<!--End of the configuration part for Facelets-->
<welcome-file-list>
<welcome-file>faces/index.jsp</welcome-file>
</welcome-file-list>
</web-app>
这是您可以在我的图书馆中找到的内容: standard.jar(用于 JSTL)
jstl.jar(用于 JSTL)
jsf-facelets.jar (Facelets 1. 1. 15)
richfaces-api-3.3.3.Final.jar
richfaces-impl-jsf2-3.3。 3.Final.jar
richfaces-ui-3.3.3.Final.jar
commons-beanutils-1.8.3.jar
commons-collections-3.2. 1.jar
commons-digester-2.0.jar
commons-logging-1.1.1.jar
jsf-api.jar(用于 JSF2)
jsf-impl.jar(用于 JSF2)
HTH。
【讨论】:
【参考方案3】:您可以尝试 Tomcat 6 的 RichFaces 4 模板:http://mkblog.exadel.com/2010/06/richfaces-4-alpha-2-is-now-available-project-template/。只需将 alpha 版本替换为 M1 版本即可。此外,从 RichFaces 4 开始,零配置。
【讨论】:
他要的是 Richfaces 3.3.3。 Richfaces 4.M1 远未完成。 我想这取决于 OP 的要求。如果目标是尝试 RichFaces 3.3.3,那么应该使用 JSF 1.2(JSF2 确实没有添加太多)。如果用户想尝试 JSF2 特性,那么应该使用 RichFaces 4 (M1)。【参考方案4】:您遇到的具体问题是什么?很多配置? web.xml
太大了?好吧,这就是你得到的。要么仔细阅读文档 - 很清楚, 或 只需寻找另一个需要较少配置的组件库,例如 PrimeFaces。基本上你只需要添加一个single resource servlet。
如果您需要更多帮助以使 RichFaces 正常工作,您确实需要更清楚地了解实际问题。 “大量配置”不是技术问题。它在你的耳朵之间。错误/警告消息和奇怪的症状是真正的问题。你应该详细说明一下。
【讨论】:
以上是关于RichFaces 3.3.3 和 JSF 2.0 工作示例的主要内容,如果未能解决你的问题,请参考以下文章
JSF、RichFaces、PrimeFaces 和 IceFaces 之间的区别
如何在 JSF 2.0/2.1 中用 CDI 替换 @ManagedBean / @ViewScope