`
德莫罗
  • 浏览: 173840 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

jboss rich face3.3.3 的JSF2.0配置附hello world 示例

    博客分类:
  • JSF
阅读更多

jboss rich face 从3.3.3开始支持JSF 2.0 但是对JSF2.0的内建FACLET不支持。下面展示如何在JSF2.0中使用rich face

首先配置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">
	<!-- 用于 JSF 2.0 的配置  start-->
	   <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
    </context-param>
    <!-- 设置 JSF 页面文件的默认后缀 -->
    <context-param> 
        <param-name>javax.faces.DEFAULT_SUFFIX</param-name> 
        <param-value>.xhtml</param-value> 
    </context-param> 
   
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    
	<!-- end -->
	<!-- 用于JBOSS richface 的 配置 start -->
	<context-param>
		<param-name>org.richfaces.SKIN</param-name>
		<param-value>blueSky</param-value>
	</context-param>
	
	<!-- Making the RichFaces skin spread to standard HTML controls -->
	<context-param>
		<param-name>org.richfaces.CONTROL_SKINNING</param-name>
		<param-value>enable</param-value>
	</context-param>
	
	 <!-- Turn off the VDL viewhandler with the following context-param in web.xml  
	      关闭 VDL(JSF2.0内建的FACLET)如果没有这一句,会报出一个NoSuchMethod 异常.-->
	<context-param>
        <param-name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</param-name>
        <param-value>true</param-value>
    </context-param>
    
     <!--
    RichFaces 需要知道应用程序中将使用 Facelet。这些元素执行这个任务,并有效地替换 faces-config.xml 中常规的 Facelets 条目。注意,Facelets 视图处理程序类是 com.sun.facelets.FaceletViewHandler。
     -->
    <context-param>
        <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
        <param-value>com.sun.facelets.FaceletViewHandler</param-value>
    </context-param>
	<!-- Defining and mapping the RichFaces filter -->
	<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 -->

<welcome-file-list>
	<welcome-file>hello.jsf</welcome-file>
</welcome-file-list>
</web-app>

 接下来是faces-config.xml 定义一个hello的managementben

<?xml version="1.0"?>
<faces-config 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-facesconfig_2_0.xsd"
	version="2.0">
	<!-- Empty for now. Your entries will go here. But even if you have no entries 
		in faces-config.xml, you are required to have a valid faces-config.xml file 
		with legal start and end tags. From JSF 2.0 tutorial at http://www.coreservlets.com/JSF-Tutorial/jsf2/ -->
	<managed-bean>
		<managed-bean-name>hello</managed-bean-name>
		<managed-bean-class>com.richface.mbeans.HelloBean</managed-bean-class>
		<managed-bean-scope>request</managed-bean-scope>
	</managed-bean>
	<navigation-rule>
		<from-view-id>/hello.xhtml</from-view-id>
		<navigation-case>
			<to-view-id>/show.xhtml</to-view-id>
			<from-outcome>success</from-outcome>
		</navigation-case>

	</navigation-rule>
</faces-config>

 JSF的页面文件hello.xhtml,其后缀xhtml和web中的配置对应。

 <!-- 设置 JSF 页面文件的默认后缀 -->
    <context-param> 
        <param-name>javax.faces.DEFAULT_SUFFIX</param-name> 
        <param-value>.xhtml</param-value> 
    </context-param> 

然后编写页面文件

<?xml version='1.0' encoding='UTF-8' ?> 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core" 
	xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich"> 
	
	<head></head>
	<body>
	<h:form>
	<rich:calendar name="Calendar" id="CalendarID"
               value="#{hello.current}"> 
    </rich:calendar> 
    <h:commandButton value="submit" action="#{hello.sayHello}"></h:commandButton>
		</h:form>
	</body>
 </html>

 接下来,编写managebean的代码

package com.richface.mbeans;

import java.util.Date;

public class HelloBean {

	private Date current;
	/**
	 * @return the current
	 */
	public Date getCurrent() {
		return current;
	}
	/**
	 * @param current the current to set
	 */
	public void setCurrent(Date current) {
		this.current = current;
	}
	public String sayHello(){
		System.out.println("hello"+current.toLocaleString());
		return "success";
	}
}

 最后部署到tomcat上就OK了。

0
0
分享到:
评论

相关推荐

    jsf2.0springhibernate.rar_jsf2

    总结,`jsf2.0springhibernate.rar_jsf2`可能包含的示例代码或教程应该详细解释了如何将JSF 2.0的UI优势、Spring 3的全面后端功能和Hibernate 3的强大持久化能力结合在一起,形成一个完整的Web应用程序解决方案。...

    JSF2.0 的ajax实现的例子,配有详细的中文注释

    为了运行这些示例,你需要一个支持JSF 2.0的服务器,如Tomcat 6、JBoss 5或GlassFish 3。这些服务器需要配置以识别和处理JSF请求。例如,Tomcat可能需要添加JSF库,而GlassFish和JBoss通常已经内置了JSF支持。 ### ...

    JSF2.0实战 - 9、自定义Filter处理资源文件依赖关系

    在JavaServer Faces (JSF) 2.0中,开发者经常需要处理应用程序的资源文件,如CSS、JavaScript、图片等,这些文件对于构建交互式的用户界面至关重要。在本章节"JSF2.0实战 - 9、自定义Filter处理资源文件依赖关系"中...

    Packt.JSF 2.0 Cookbook.Jun 2010.pdf

    《JSF 2.0 Cookbook》是一本针对JavaServer Faces(JSF)2.0框架的实战指南,由Anghel Leonard撰写,于2010年6月由Packt Publishing出版。本书提供了超过100个简单而高效的实际案例,旨在帮助开发者掌握并优化他们的...

    jboss-ajax4jsf-1.1.1-src

    【标题】"jboss-ajax4jsf-1.1.1-src" 是一个开源项目,主要涉及Ajax4jsf框架的源代码版本,版本号为1.1.1。Ajax4jsf是针对JavaServer Faces (JSF) 技术的一个扩展,它允许开发者在JSF应用中无缝集成Ajax功能,提升...

    JSF2.0快速入门的基本教程.ppt

    本系列将以两个例子来讲解jsf的基本开发,第一个例子当然是hello world。目前可用的jsf ide不多,ibm要到06年才能放出支持jsf的wtp版本。所以我们的例子基本以手写为主,这样也能让我们有更清楚的认识,同时推荐目前...

    EJB2.0一个完整的Helloworld

    **企业级JavaBeans(EJB)2.0详解——基于Helloworld示例** EJB(Enterprise JavaBeans)是Java EE(Java Platform, Enterprise Edition)平台的核心组成部分,它为开发分布式、事务处理、安全和可扩展的企业级应用...

    jboss-seam2.0文档.rar

    **JBoss Seam 2.0:企业级应用开发框架** JBoss Seam 2.0 是一个全面的企业级Java开发框架,旨在简化Java EE(现在称为Java EE)应用程序的构建过程,尤其是在集成各种技术和处理业务逻辑方面。Seam 提供了一个统一...

    jboss-seam2.0文档

    【JBoss Seam 2.0文档详解】 JBoss Seam 是一个开源的企业级开发框架,它旨在简化Java EE应用的开发过程,特别是在Web和富互联网应用程序(Rich Internet Applications, RIA)领域。Seam 2.0是其重要的版本,提供了...

    jboss-jaxrs-2.0-api-1.0.0-6.el8.noarch(1).rpm

    官方离线安装包,亲测可用

    Jboss ajax4jsf bin

    【Jboss AJAX4JSF Bin】是JBoss企业级应用服务器上用于支持AJAX功能的扩展框架,主要用于增强JavaServer Faces (JSF)应用程序的用户体验。这个压缩包`jboss-ajax4jsf-1.1.1-bin.zip`包含了AJAX4JSF 1.1.1版本的所有...

    EJB3.0之HelloWorld

    本教程将通过一个简单的"HelloWorld"示例,介绍EJB3.0的基本概念和使用方法。 1. **无容器依赖的注解配置**: 在EJB3.0中,不再需要XML配置文件来定义bean的行为,而是通过Java注解(Annotation)来完成。例如,`@...

    Jboss_Seam_2.0中文手册

    Jboss_Seam_2.0中文手册

    hello-world-jboss

    helloworld:Helloworld 示例添加一名作者级别:初学者技术:CDI、Servlet 总结:基本示例,可用于验证服务器是否已正确配置和运行目标产品:EAP 产品版本:EAP 6.1、EAP 6.2 来源: : 它是什么? 此示例演示了CDI ...

    EJB HelloWorld

    HelloWorld helloworld = (HelloWorld) ctx.lookup("HelloWorldBean/remote"); out.println(helloworld.SayHello("佛山人")); 5.用ant或eclipse,把客户端文件打成war包,发布到jboss上 6.输入...

    jboss配置入门,jboss的初级配置

    jboss配置入门 jboss系统是一种基于Java的应用服务器,具有高性能、可扩展、安全性强等特点。在本文中,我们将对jboss的基本配置进行介绍,包括其文件夹结构、配置文件、负载均衡配置等。 jboss文件夹结构 jboss的...

Global site tag (gtag.js) - Google Analytics