首先不说多余的话,直接先上helloworld入门示例,这样最直接的初体验一下JSF
1.可以去JSF官网下载相应的JSF文件,或者使用MyEclipse6.5导入JSF支持,因为在MyEclipse6.5下建立web工程,所建的web工程下Java EE 5 Libraries下包含了jsf-impl.jar和jsf-api.jar,故导入的支持,实际是在 web.xml中对javax.faces.webapp.FacesServlet这个类的一个注册,并且导入一个可以可视化配置的 faces-config.xml配置文件,具体 web.xml中的配置如下
该配置不需多讲,知道servlet配置的都应该知道其中的含义,这里只对*.faces做个简单的解释,凡是 *.faces的请求,均通过该类处理,Jsf处理的办法是:将直接调用对应的.jsp页面,例如:/index.faces,则实际FacesServlet会去调用对应的/index.jsp页面
2.编写一个简单的javabean
我们将在index.jsp页面提交一个表单,将名字显示在result.jsp页面中
3.在faces-config.xml中进行配置
具体的配置如下:
这里做一个简要的说明:
navigation-rule:是jsf的导航规则:在这段配置代码里面定义了一个规则,from-view-id:指的是请求来自的具体的位置,这里请求是从index.jsp中发出的,navigation-case里面指出了具体的请求,转向到具体的资源,这里login请求会转向到一个result页面
managed-bean:是在配置一个javabean,前面2个子节点不需多解释managed-bean-scope:指定javabean存储的区域
4.编写相应的jsp页面
首先编写index.jsp
首先先导入我需要使用的JSF标签
core标签处理UI组件,html标签是有些最终会转化成相应html控件
接着编写jsp页面
如果需要使用JSF的组件,也就是一系列标签,则需要使用<f:view>标签包含
<h:form>对应一个表单
<h:inputText>产生一个文本框,输入值提交之后将会把值赋给user所对应的属性name
<h:commandButton>产生一个提交按钮,提交的请求时login
再编写result.jsp
同样先导入需要的标签
在编写result.jsp的主要内容
h:outputText 会向页面打印输出对应的值
5.最后发布,启动服务器,在ie中输入
http://localhost:8080/testjsf/index.faces
testjsf对应发布的工程名
注意如果直接进入http://localhost:8080/testjsf/index.jsp页面将报错
再输入值提交,看结果
具体的代码,上传如下:
注意因为我是使用的myeclipse建工程时自带的Java EE 5 Libraries
所以下载运行的时候要么导入Java EE 5 Libraries,要么新建一个工程,或者自己导入相应的包
1.可以去JSF官网下载相应的JSF文件,或者使用MyEclipse6.5导入JSF支持,因为在MyEclipse6.5下建立web工程,所建的web工程下Java EE 5 Libraries下包含了jsf-impl.jar和jsf-api.jar,故导入的支持,实际是在 web.xml中对javax.faces.webapp.FacesServlet这个类的一个注册,并且导入一个可以可视化配置的 faces-config.xml配置文件,具体 web.xml中的配置如下
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.faces</url-pattern>
- </servlet-mapping>
<servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.faces</url-pattern> </servlet-mapping>
该配置不需多讲,知道servlet配置的都应该知道其中的含义,这里只对*.faces做个简单的解释,凡是 *.faces的请求,均通过该类处理,Jsf处理的办法是:将直接调用对应的.jsp页面,例如:/index.faces,则实际FacesServlet会去调用对应的/index.jsp页面
2.编写一个简单的javabean
- package com.wepull.bean;
- public class UserBean {
- private String username;
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- }
package com.wepull.bean; public class UserBean { private String username; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
我们将在index.jsp页面提交一个表单,将名字显示在result.jsp页面中
3.在faces-config.xml中进行配置
具体的配置如下:
- <?xml version='1.0' encoding='UTF-8'?>
- <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_1_2.xsd"
- version="1.2">
- <navigation-rule>
- <from-view-id>/index.jsp</from-view-id>
- <navigation-case>
- <from-outcome>login</from-outcome>
- <to-view-id>/result.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
- <managed-bean>
- <managed-bean-name>user</managed-bean-name>
- <managed-bean-class>com.wepull.bean.UserBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
- </faces-config>
<?xml version='1.0' encoding='UTF-8'?> <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_1_2.xsd" version="1.2"> <navigation-rule> <from-view-id>/index.jsp</from-view-id> <navigation-case> <from-outcome>login</from-outcome> <to-view-id>/result.jsp</to-view-id> </navigation-case> </navigation-rule> <managed-bean> <managed-bean-name>user</managed-bean-name> <managed-bean-class>com.wepull.bean.UserBean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> </faces-config>
这里做一个简要的说明:
navigation-rule:是jsf的导航规则:在这段配置代码里面定义了一个规则,from-view-id:指的是请求来自的具体的位置,这里请求是从index.jsp中发出的,navigation-case里面指出了具体的请求,转向到具体的资源,这里login请求会转向到一个result页面
managed-bean:是在配置一个javabean,前面2个子节点不需多解释managed-bean-scope:指定javabean存储的区域
4.编写相应的jsp页面
首先编写index.jsp
首先先导入我需要使用的JSF标签
- <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
- <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
core标签处理UI组件,html标签是有些最终会转化成相应html控件
接着编写jsp页面
- <f:view>
- <h:form>
- <h3>请输入姓名:</h3>
- 名称:<h:inputText value="#{user.username}"></h:inputText>
- <h:commandButton value="送出" action="login"></h:commandButton>
- </h:form>
- </f:view>
<f:view> <h:form> <h3>请输入姓名:</h3> 名称:<h:inputText value="#{user.username}"></h:inputText> <h:commandButton value="送出" action="login"></h:commandButton> </h:form> </f:view>
如果需要使用JSF的组件,也就是一系列标签,则需要使用<f:view>标签包含
<h:form>对应一个表单
<h:inputText>产生一个文本框,输入值提交之后将会把值赋给user所对应的属性name
<h:commandButton>产生一个提交按钮,提交的请求时login
再编写result.jsp
同样先导入需要的标签
在编写result.jsp的主要内容
- <f:view>
- <h:outputText value="#{user.username}" />您好
- </f:view>
<f:view> <h:outputText value="#{user.username}" />您好 </f:view>
h:outputText 会向页面打印输出对应的值
5.最后发布,启动服务器,在ie中输入
http://localhost:8080/testjsf/index.faces
testjsf对应发布的工程名
注意如果直接进入http://localhost:8080/testjsf/index.jsp页面将报错
再输入值提交,看结果
具体的代码,上传如下:
注意因为我是使用的myeclipse建工程时自带的Java EE 5 Libraries
所以下载运行的时候要么导入Java EE 5 Libraries,要么新建一个工程,或者自己导入相应的包
相关推荐
JSF-2-Hello-World-Example.zip
引用别人的Demo,自己运行。做个备份。 http://www.mkyong.com/jsf2/jsf-2-0-hello-world-example/
JSF2.0实战 - 1-3、Hello World,AJAX体验,onPageLoad示例代码
jsf 入门 helloWorld 带说明:http://blog.csdn.net/w420372197/article/details/7823038
NULL 博文链接:https://thinktothings.iteye.com/blog/857565
这是一个最简单的jsf例子可以用myeclipse直接打开发布到tomcat下查看效果
JSF的HelloWorld与新手一起分享,详细说明了简单的实现登录过程
[INFO] +- javax.faces:jsf-api:jar:1.2_04:provided [INFO] +- javax.servlet:jstl:jar:1.2:provided [INFO] +- javax.servlet.jsp:jsp-api:jar:2.1:provided [INFO] +- javax.faces:jsf-impl:jar:1.2_04:provided ...
J2EE-Hello-World 您可以找到j2ee中可用的每种技术的“ Hello world Example”,例如:jsp,servlet,jsf,Web服务(肥皂和休息)....如果您想参与该项目的新技术,请克隆此存储库,添加您的hello world示例,并向我...
The C Programming Language若干行代码网络平台输出测试
自己学习JSF, Spring, Hiebernate的 HelloWorld程序,开发环境MyEclipse,含有Tomahawk、RichFaces部分集成实例。具体包括登录、注册、树控件、日历等。可用作平时学习之用! 由于大小的限制,缺少的包请到相关...
JSF介绍,实例,helloWorld.doc
一个小例子适合jsf入门者。本人自己敲的代码 完全可用 启动服务器(tomcat)部署之后 输入:http://localhost:8080/HelloJsf/HelloWorld.faces就可以了
JSF Web应用例子 jsf入门最简单实例 Hello world之JSF
本系列将以两个例子来讲解jsf的基本开发,第一个例子当然是hello world。目前可用的jsf ide不多,ibm要到06年才能放出支持jsf的wtp版本。所以我们的例子基本以手写为主,这样也能让我们有更清楚的认识,同时推荐目前...
8种Java Web框架安装手记,分别是Grails,GWT,JSF,Play,Spring,Struts,Vaadin,Wacket。全部是截止2013-12-19最新的框架版本,文档最后有链接可以下载所有相关资料和jar包以及示例程序,任何问题可以联系...
jsf-api.jar jsf-impl.jar jstl-1.2.jar spring-1.2.6.jar stax-api-1.0.1.jar stax-utils-20040917.jar wsdl4j-1.6.1.jar wss4j-1.5.0.jar wstx-asl-3.2.9.jar xbean-spring-2.8.jar xfire-all-1.2.6.jar...
第1章 Struts 2概述,第2章 Struts 2下的HelloWorld,第3章 Struts 2基础,第4章 深入Struts 2,第5章 Struts 2的类型转换,第6章 文件的上传和下载.,第7章 Struts 2的拦截器,第8章 Struts 2的输入校验,9.2 ...
12-4 使用 Eclipse 开发 Hello World 12-5 使用 Eclipse 开发 Web Application 12-6 使用 Eclipse 来开发 Web Application(2) 第十三章 SQL 介绍 13-1 数据库基本概念 13-2 SQL 简介 13-3 DDL 语句 13-4 数据的查询...
最小的HelloWorld 模板化 创建和使用自定义组件 范围界定 使用引导程序进行静态导航,将模板更改为引导程序 验证和消息 编码 自定义转换器 新话题 我继续使用这个项目来制作小功能的原型。 添加以下主题: 动态...