JSF(Java Server Face)的使用和经验

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

对在eclipse+myeclipse中使用java server face(JFS)的办法:

根据myeclipse的简介操作jsf的创建向导,创建一个jsf项目。具体内容如下:

1.j2ee的web project工程的创建

2.添加jsf的包到工程(Adding JSF Capabilities to a Web Project)

创建相关的包和配置文件.

3.添加jfs页面(jsp中一种特殊的格式的文件)

注:页面中一般都有引入两个包的taglib如下:

<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> //主要是页面处理的taglib

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> //主要是页面显示的封装的taglib,例如从包中.properties中提取关键的可配置的显示。

4.创建相关的包和类.通常是用于处理的class.(也就是javabean)

5.根据需要些需要修改或再写javabean和jsf。

7.要修改配置文件:例如.properties文件,face-config.xml文件等

6.同一般的部署方法部署到服务器上。即可运行。(对服务器的版本的要求比较高,weblogic8.1对这些taglib有警告)

解释一下:

1.对于一些可配置的页面内容,可以放到相关的包下。然后在jfs文件中

<f:loadBundle basename="com.Login.MessageBundle" var="bundle"/>

其中com.Login.MessageBundle表示对com.Login包下的MessageBundle.properties文件内容的名值对的引用

bundle在jfs文件中是变量,拥有.properties文件中的名作为属性,名对应的值即为属性值。他可以被其他地方引用。

2.通过faces-config.xml文件使javabean和jf之间进行通信。类似于struts-config.

<faces-config>

<navigation-rule>

<from-view-id>/Login.jsp</from-view-id><---首先显示的页面,他的处理结果来自于javaBean,但是后继的页面的显示通过返回的<from-outcome>对应的标示,并用<to-view-id>来指明。-->

<navigation-case>

<from-outcome>success</from-outcome>

<to-view-id>/LoginSuccessfully.jsp</to-view-id>

</navigation-case>

<navigation-case>

<from-outcome>failure</from-outcome>

<to-view-id>/Login.jsp</to-view-id>

</navigation-case>

</navigation-rule>

<managed-bean><--对使用的bean的定义-->

<description>Bean used to handle all User-based operations.</description>

<managed-bean-name>UserBean</managed-bean-name>

<managed-bean-class>com.Login.Use.UserBean</managed-bean-class>

<managed-bean-scope>session</managed-bean-scope> <--表示适用会话期间-->

</managed-bean>

</faces-config>

3.对于标签的属性的细节可以参看相关的.tld文件。

4.页面可以直接使用,设置,请求javaBean中的方法和属性。

例如: <h:commandButton id="submit" action="#{UserBean.loginUser}" //直接请求对应的javaBean的方法

value="#{bundle.login_button_label}"/>

5.jsf文件本身是一个jsp文件(以jsp为后缀名),而在请求时则要用对应的.faces文件来请求。

总结:JSF只是不仅可分离处理业务和表示,还分离页面的内容。这样不仅实现处理和页面的分离,还实现了页面内容的分离。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航