`
jxh118
  • 浏览: 124176 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JBoss和GlassFish中部署RichFaces较容易成功

阅读更多
[size=medium]在MyEclipse6.0中部署到Tomcat的RichFaces项目太痛苦了,N多错误,部署到JBoss和GlassFish就不一样了,一次部署就成功!毕竟SUN的JSF参考实现使用的服务器就是GlassFish,而RichFaces是JBoss的开源框架!
1.解压下载的压缩包文件,复制其中的“richfaces-api-3.1.0.jar”,“richfaces-impl-3.1.0.jar”,“richfaces-ui-3.1.0.jar”文件到应用程序 "WEB-INF/lib" 目录下。

2.添加如下内容到应用程序“WEB-INF/web.xml”文件中。
<context-param> 
<param-name>org.richfaces.SKIN</param-name> 
<param-value>blueSky</param-value> 
</context-param> 
<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> 

3.添加如下几行到应用程序 JSP 页面中:
<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j" %> 
<%@ taglib uri="http://richfaces.org/rich" prefix="rich" %> 

对于 XHTML 页面:
<xmlns:a4j="http://richfaces.org/a4j" /> 
<xmlns:rich="http://richfaces.org/rich" /> 


三、web.xml 中的 Richfaces 参数

I、初始化参数(<context-param>)
1.org.richfaces.SKIN
默认值:DEFAULT

其它八种预定义的皮肤:
DEFAULT
plain
emeraldTown
blueSky
wine
japanCherry
ruby
classic
deepMarine


其值为在应用中使用的皮肤的名字。其值可用一个精确(大小写)的字符串做为皮肤名字,或指向一个字符串属性的 EL 表达式(#{...}),或 org.richfaces.framework.skin 类型的一个属性。

2.org.ajax4jsf.LOGFILE
默认值:none

这是一个指向应用程序或容器日志文件的 URL (如果有日志文件的话)。如果设置了这个参数,那么日志文件的内容将会作为一个调试错误页面在框架(iframe)窗口中显示。

3.org.ajax4jsf.VIEW_HANDLERS
默认值:none

这是一个由逗号分隔的自定义 ViewHandler 实例的序列,用于插入到 Handlers 链路上。Handlers 按照给定的顺序被插入到 RichFaces viewhandlers 之前。例如,在 facelets 应用程序中,这个参数必须包含 com.sun.facelets.FaceletViewHandler,来代替在 faces-onfig.xml 文件中的声明。

4.org.ajax4jsf.CONTROL_COMPONENTS
默认值:none

这是一个逗号分隔的名字序列,用于将一个组件作为一个特殊的控制情形,例如资源文件加载器,别名(alias)bean 组件等等。这是一个从 COMPONENT_TYPE 静态属生反射得到的一个组件类型。对于这样类型组件的编码方法常常在呈现的 Ajax 响应中被调用,尽管这个组件不在被更新部分中。

5.org.ajax4jsf.ENCRYPT_RESOURCE_DATA
默认值:false

为了生成的资源,例如加密生成的数据,它会在资源的 URL 上被编码加密。例如,URL 指向一个由 mediaOutput 组件生成的图片,而 mediaOutput 组件包含一个生成方法的名字,那么对于一个黑客的攻击来说,他很可能创建一个对于任何 JSF baked beans 或其它属性的请求。为了避免这样的攻击,在重要的应用程序中设置这个参数为“true”(应用于 JRE > 1.4)。

6.org.ajax4jsf.ENCRYPT_PASSWORD
默认值:random

用于资源数据加密的一个密码。如果没有设置,将使用一个随机的密码。

7.org.ajax4jsf.COMPRESS_SCRIPT
默认值:true

不允许框架重新格式化 JavaScript 文件(使其不利于调试)

II、org.ajax4jsf.Filter 初始化参数
1.log4j-init-file

这是一个指向 log4j.xml 配置文件的路径(相对于应用程序上下文),log4j.xml 可用于创建每个应用程序的自定义日志信息。

2.enable-cache
默认值:true

启用框架所生成资源(JavaScript,CSS,images,等等)的缓存。为了调试开发自定义的 JavaScript 或 Style(css) 目的,应避免在浏览器中使用旧的缓存数据。

3.forceparser
默认值:true

通过一个 HTML 语法检查器强制解析每一个 JSF 页面。如果为“false”,只有 Ajax 响应才被语法检查器解析且被转换为规范的 XML。设置为“false”除了提高了性能,还为 Ajax 更新提供视觉的效果。


四、其他

因为本人现在使用的是 Myfaces,所以下面列出了有关 Myfaces 与 RichFaces 集成的问题:

问题在于 web.xml 文件中所定义的多个不同的过滤器之间存在冲突。为了避免这些问题,RichFaces 过滤器在配置文件中的位置必须被定义在其它过滤器之上。

当使用 MyFaces + Seam 时,还有其它问题。如果使用这个组合,那么应该在 <f:view> 标签内部使用 <a4j:page> 标签,然后再在 <a4j:page> 标签中包含其它内容,因为 Myfaces 中的 <f:view> 实现存在一些问题。

这个问题可能在不久的将来被攻克。


五、其他技术问题,可参见:

http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone/docs/devguide/en/html/SettingsForDifferentEnvironments.html



[/size]
分享到:
评论

相关推荐

    richfaces3.2.2 demo project for eclipse

    7. **部署到服务器**:学习如何将RichFaces应用部署到Tomcat、JBoss、GlassFish等Java EE服务器上,是实际开发中的重要步骤。 8. **AJAX支持**:RichFaces的一个关键特性是其强大的AJAX支持,它可以异步更新页面...

    richfaces实战(目前市面上最好的richfaces资料)

    3. **兼容性**:与JavaServer Faces (JSF) 完美结合,支持多种服务器环境,包括GlassFish、JBoss AS等。 4. **易于集成**:可以轻松地与其他Java EE技术(如EJB、JPA)集成,增强应用的功能性和可扩展性。 5. **国际...

    richFaces帮助文档

    **RichFaces** 是一款强大的开源JavaScript框架,它为JavaServer Faces (JSF) 提供了一系列丰富的组件库和皮肤支持功能。该框架致力于简化Web应用开发过程中的复杂度,使得开发者能够更加轻松地创建出功能丰富且界面...

    richfaces参考手册

    - **服务器支持:** 包括JBoss AS、GlassFish、WebLogic等主流应用服务器。 - **浏览器兼容性:** 支持最新版本的Chrome、Firefox、Safari、IE等主流浏览器。 #### 二、入门指南 **2.1 下载RichFaces** 可以通过...

    richface4.2

    2. **JSF集成**: RichFaces完全兼容JSF 2.x规范,这使得它能够在任何JSF兼容的应用服务器上运行,如Tomcat、GlassFish或JBoss。 3. **组件库**: RichFaces包含了一系列精心设计的UI组件,如数据表、图表、树形结构、...

    核心 JSF 编程(CHM)

    11. **部署和测试**:了解如何在不同的Java EE服务器(如Tomcat、GlassFish、JBoss等)上部署JSF应用,以及如何进行单元测试和集成测试。 在阅读《核心 JSF 编程》时,配合实际项目练习,你可以系统地掌握JSF技术,...

    Apress.Facelets.Essentials.May.2008

    至于"j2ee java"标签,这表明书中的内容会深入到Java EE(Java 2 Platform, Enterprise Edition)环境,详细阐述如何在Java EE服务器(如GlassFish、JBoss或Tomcat)上部署和运行Facelets应用程序。书中可能还会涉及...

    Seam-gen生成基础项目骨架

    使用 `seam setup` 命令,工具会询问一系列关于项目和数据库的问题,如项目目录、JBoss 应用服务器的路径、GlassFish 服务器信息(如果需要)、项目名称等。用户可以根据提示输入相应信息或接受默认值。例如,可以...

    jsf框架

    - JBoss Seam是一个用于构建企业级应用程序的框架,可与JSF和RichFaces集成。 - 配置Seam以支持RichFaces组件。 #### Portlet支持 - 富客户端组件可以在Portlet容器中运行。 - 需要确保服务器支持portlet模式,并...

    ajax jsf javascript

    Ajax4jsf,也称为RichFaces或A4J,是用于将AJAX(Asynchronous JavaScript and XML)技术集成到JavaServer Faces(JSF)应用程序中的组件库和框架。它由Red Hat公司开发,旨在为开发者提供一个强大的工具集,以便在...

    a4j框架应用实例简介

    5. **兼容性**:A4J支持JSF 1.2和2.0版本,因此它可以与多种Java EE服务器和IDE无缝配合,如Tomcat、GlassFish、JBoss等。 6. **简化开发**:A4J通过其简单易用的API和声明式方法,减少了编写大量JavaScript代码的...

    J2EE程序员需掌握的技术

    在IT行业中,J2EE(Java 2 Platform, Enterprise Edition)是企业级应用开发的重要标准,涵盖了一系列技术和框架。作为一名J2EE程序员,你需要掌握以下关键领域的知识: 1. **Web开发框架**: - JSF(Facelets,...

Global site tag (gtag.js) - Google Analytics