JSF入门教程
- 格式:pdf
- 大小:313.80 KB
- 文档页数:49
1.结构:a)结构图:b) 说明:JSF以MVC模式为基础,与S truts不同,JSF的目标是希望以一个与Swing相类似的方式来开发网页,因此,从JSF的结构图当中,他的核心概念不是页面,而是控件树,也就是说,当用户提交一个请求时,JSF会先将页面上的组件先转换为与Swing当中类似的,由容器和控件组成的控件树,然后数据和事件被设置到对应的控件上,然后以一种与Swing类似的方式,来处理后续的请求。
控件树是整个JSF的核心,所有其他的一切一切都是围绕着这棵控件树展开的。
2.生命周期:a)周期图:b)说明:i.Restore View:JSF的处理核心是控件树,他会先将页面上所声明的控件转换为一棵控件树,后续的操作将在这颗控件树上进行。
为了提高性能,系统会为之前生成的控件树提供缓存。
Restore View的工作就是在缓存当中查找是否存在之前已经生成好的控件树,如果没有,则根据页面的内容,重新生成。
ii.Apply Request Values:把请求当中的数据设置到控件树当中对应的控件当中去。
iii.Process Validations:如果某一控件有配置Validator,则这些Validator将对刚设置的数据的正确性和合法性进行验证。
iv.Update Model Values:控件树上的控件更新其底层所对应的模型。
v.Invoke Application:对产生的事件进行分发。
vi.Render Response:构建作为响应的控件树。
3.UI:a)结构图:b)控件:i.说明:JSF通过标签库,提供了一些主要控件的实现。
包括标签,文本框,单选框,列表等。
由于JSF使用一种类似于UI的方式来组织组件,所以,除了基本的组件以外,还提供了一些用于布局的容器,例如面板等。
在这里有一个要注意的地方就是,一般情况下,页面的内容应该放到JSF提供的view标签里面。
ii.代码:<%@page contentType="text/html;charset=gb2312"%><%@ taglib uri="/jsf/core" prefix="f"%><%@ taglib uri="/jsf/html" prefix="h"%><html><head><title>Test</title></head><body><f:view><h:form><h:panelGrid columns="1"><h:outputLabel><h:outputText value="User ID"/></h:outputLabel></h:panelGrid></h:form></f:view></body></html>c) 事件处理:i.说明:与Struts不同,由于JSF使用以控件树为中心的方式来处理请求,所以,她提供了一种额外的类似Swing的,事件处理的方式来处理用户的输入事件。
JSF标签使用参考手册文档信息修订记录文档审核/审批(此文档需如下审核)文档分发(此文档将分发至如下各人)目录1前言51.1文档目的 (5)1.2文档范围 (5)1.3目标读者 (5)2基础标签 (6)2.1<f:view> (6)2.2<f:subview> (6)2.3<f:loadBundle> (6)2.4<h:message> (7)2.5<h:messages> (8)2.6<h:graphicImage> (9)2.7<h:outputText> (9)2.8<h:dataTable> (10)2.9<x:dataScroller> (12)2.10<h:inputText> (14)2.11<h:inputTextarea > (15)2.12<h:inputSecret > (16)2.13<x:inputCalendar > (17)2.14<h:inputHidden > (18)2.15<h:selectOneMenu> (19)2.16<h:selectOneRadio> (20)2.17<h:selectOneListbox> (21)2.18<h:selectManyListbox> (23)2.19<h:selectBooleanCheckbox> (24)2.20<f:selectItems> (24)2.21<h:outputLink> (25)2.22<h:commandButton> (26)2.23<h:commandLink> (26)2.24<x:updateActionListener> (27)2.25<x:jscookMenu> (28)3自定义标签 (30)3.1<gc:ajaxlink> (30)3.2<gc:ajaxdialog> (31)3.3<gc:inputdate> (32)3.4<gc:multLink> (33)3.5<gc:multCheck> (34)3.6<gc:multSelect> (35)3.7<gc:paginator> (36)3.8<gc:panelGrid> (37)3.9<gc: codetable> (39)3.10<gc: oneSelect> (39)3.11<gc: outputText> (40)3.12<gc: commandLink> (41)3.13<gc: commandButton> (42)3.14<gc: scrollPanelGrid> (43)3.15<gc: convertNumberFormat> (43)3.16<gc: inputCode> (44)4客户端验证标签 (46)4.1<gv: compareValidator > (46)4.2<gv: requiredfieldValidator > (47)4.3<gv: lengthValidator > (47)4.4<gv: rangeValidator > (48)4.5<gv: regularexpressionValidator > (48)4.6<gv: mustcheckedValidator > (49)4.7<gv: dateformatValidator > (49)4.8<gv: datamaskValidator > (50)4.9<gv: customValidator > (51)4.10<gv: scriptGenerator > (51)5表格分页 (52)5.1数据 (52)5.2页面 (53)6限制文本框输入 (55)7BackingBean中方法说明561 前言1.1 文档目的该文档旨在为界面开发工作组提供一套完整的JSF控件使用说明书。
python调用jsf方法-回复如何使用Python调用JSF方法JSF(JavaServer Faces)是一种用于构建面向Web的用户界面的Java 框架。
然而,有时我们可能需要从Python中调用JSF方法。
这篇文章将一步一步地解释如何使用Python调用JSF方法。
1. 配置Python环境和依赖项首先,确保你的计算机已经安装了Python,并且环境变量已经正确设置。
然后,使用pip安装所需的依赖项。
在命令行中执行以下命令:pip install requests这将安装requests库,这是一个用于发送HTTP请求的常用库。
2. 导入所需库在Python文件的顶部,导入所需的库。
这里,我们需要导入requests 库、json库和time库。
使用以下代码实现:pythonimport requestsimport jsonimport time3. 构建HTTP请求使用Python发送HTTP请求到JSF方法。
为此,我们需要构建一个HTTP POST请求,并在请求的主体中包含所需的参数。
下面是一个例子:pythonurl = "headers = {'Content-Type': 'application/json'}data = {'param1': 'value1','param2': 'value2'}response = requests.post(url, headers=headers,data=json.dumps(data))在上面的代码中,我们指定了JSF方法的URL和请求标头。
然后,我们使用json.dumps方法将参数转换为JSON格式,并将其作为请求的主体。
4. 检查HTTP响应使用Python处理HTTP响应。
在上一步中,我们发送了HTTP请求,并接收到了一个响应。
JavaEE5学习笔记13-JSF集成Facelets使用经验总结
刘岩
Email:
1.Facelets就像tiles、sitemesh一样,以为了JSF模板布局而提出的页面模板框架,使用
Facelets,先将项目页面的整体样式模板设计好(比如采用一般的上、中、下结构)。
之后项目的其他页面布局只需要声明采用预先定义好的布局框架即可。
使得用了最少的页面代码完成了整个系统样式的统一。
2.JSF集成facelets的准备
首先下载facelets相关的jar包,jsf-facelets.jar,在.net/就可以得到它。
就是说,凡是xhtml文件结尾的都支持可以使用定义好的facelets模板。
修改JSF配置文件,增加如下内容
此处是告诉JSF,采用FaceletViewHandler进行视图处理器,这个处理器在JSF生命周期的第1阶段和第6阶段生效。
也就是说视图创建阶段和返回响应阶段,将布局特效夹杂其中。
这样环境算是配好了。
3.模板页面
我们先定义一个模板页面,这个页面就是所有页面布局的基础,其他页面呈现出来的效果都是基于此模板页面的。
代码如下:
页面头header.xhtml
页面底部。
JSF字库的建立及使用1 JSF字库功能定义JSF字体是EZCAD软件中专用的字体,在EZCAD中用户可以自建JSF字体。
在EZCAD 的font目录下的后缀名为“.jsf”的文件是EZCAD软件专有的字体文件,每一个JSF字体文件里保存一种字体。
用户可以将预先准备好的图形设置对应的字符保存在字体文件中,然后调用。
当用户点击JSF字体后系统弹出如图1-1所示对话框.图1-1 JSF字库建立界面下面我们来介绍一下界面内各参数和功能键的作用。
“帮助”按钮:我们在使用JSF字库功能建立或修改出我们需要的字体文件之前,我们先要了解软件所识别字体的基本构成,在这里我们可以详细了解JSF字体的字架结构,点击“帮助”按钮弹出图1-2所示对话框。
图1-2 帮助界面通过图1-2我们可以看到,除了代表字符的图形的宽度和高度外,软件识别字体时还包括字体的上高、下高、左支撑宽度、右支撑宽度等等,也就是说如果我们所设计的能代表字符Q的图形是图1-2中灰色方框所划定的范围的话,那么实际上软件在识别Q的图形是图1-2中蓝色虚线所划定的范围。
其中我们所设计的图形的宽度和高度以及左支撑宽度、右支撑宽度、上高、下高都可以通过软件来进行更改。
jsf字库文件名称:指需要建立或修改的字库文件的名称。
图形对应的字符:指与当前预览框里图形相对应的字符。
载入字符数据:指从字库里提取对应字符的图形。
注意:这里所说到的字库和字符都是已经存在的。
保存字符数据:指把当前预览框里的图形替换字库里对应字符的数据,如果是新建字符则是把当前预览框里的图形保存到字库里对应字符的数据里。
比例X: 预览框里图形的X方向伸缩比例,改变此参数可以改变我们所设计的能代表字符的图形的宽度,默认值为1,增大,图形变宽;减小,图形变窄。
比例Y: 预览框里图形的Y方向伸缩比例,改变此参数可以改变我们所设计的能代表字符的图形的高度,默认值为1,增大,图形变高;减小,图形变矮。
偏移距离Y: 预览框里图形的Y方向偏移距离,默认值为0,增大,图形向上移动;减小,图形向下移动。