一个简单的JavaServer Faces应用程序

本文概述

  • 1)创建用户界面
  • 2)创建一个托管Bean
  • 3)配置应用
要创建JSF应用程序, 我们使用NetBeans IDE 8.2。你还可以引用其他Java IDE。
在这里, 我们将创建一个项目, 然后运行它来测试其配置设置。因此, 让我们创建一个新的项目拳头。
步骤1:创建一个新项目
转到文件菜单, 然后选择新项目。
一个简单的JavaServer Faces应用程序

文章图片
选择类别Java Web和Project Web应用程序。
一个简单的JavaServer Faces应用程序

文章图片
输入项目名称。
一个简单的JavaServer Faces应用程序

文章图片
选择服务器和Java EE版本。
一个简单的JavaServer Faces应用程序

文章图片
选择JSF框架
一个简单的JavaServer Faces应用程序

文章图片
选择“首选页面语言”:对于演示页面, JSF框架的早期版本默认为JSP。现在, 在最新版本2.0和更高版本中, JSF包含了功能强大的工具“ Facelets”。因此, 这里我们选择页面语言作为facelets。在下一章中, 我们将更详细地讨论facelets。
一个简单的JavaServer Faces应用程序

文章图片
Index.xhtml页面:完成后, IDE将使用默认的index.xhtml文件为你创建一个JSF项目。 Xhtml是html的扩展, 用于创建facelets页面。
一个简单的JavaServer Faces应用程序

文章图片
运行:现在, 你可以通过右键单击项目后选择运行选项来运行应用程序。它将产生一个默认消息“ Hellolets from Facelets”。
我们已经成功创建了JSF项目。该项目包括以下文件:
  1. index.xhtml:“网页”目录中
  2. web.xml:在WEB-INF目录中
每当我们运行项目时, 它都会将index.xhtml呈现为输出。现在, 我们将创建一个包含两个网页, 一个bean类和一个配置文件的应用程序。
为了开发新的应用程序, 需要执行以下步骤:
  1. 创建用户界面
  2. 创建托管bean
  3. 配置和管理FacesServlet
1)创建用户界面 我们将使用默认页面index.xhtml渲染输入网页。修改你的index.xhtml源代码, 如下所示。
// index.xhtml < ?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:h="http://xmlns.jcp.org/jsf/html"> < h:head> < title> User Form< /title> < /h:head> < h:body> < h:form> < h:outputLabel for="username"> User Name< /h:outputLabel> < h:inputText id="username" value="http://www.srcmini.com/#{user.name}" required="true" requiredMessage="User Name is required" /> < br/> < h:commandButton id="submit-button" value="http://www.srcmini.com/Submit" action="response.xhtml"/> < /h:form> < /h:body> < /html>

创建另一个产生输出的网页。
一个简单的JavaServer Faces应用程序

文章图片
一个简单的JavaServer Faces应用程序

文章图片
创建response.xhtml页面之后。现在, 如下所示修改其源代码。
// response.xhtml
< ?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:h="http://xmlns.jcp.org/jsf/html"> < h:head> < title> Welcome Page< /title> < /h:head> < h:body> < h2> Hello, < h:outputText value="http://www.srcmini.com/#{user.name}"> < /h:outputText> < /h2> < /h:body> < /html>

2)创建一个托管Bean 这是一个Java类, 其中包含属性和getter setter方法。 JSF将其用作模型。因此, 你也可以使用它来编写业务逻辑。
一个简单的JavaServer Faces应用程序

文章图片
一个简单的JavaServer Faces应用程序

文章图片
创建Java类后, 将以下代码放入User.java文件中。
// User.java
package managedbean; Facelet Title import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class User { String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }

3)配置应用 为了配置应用程序, 项目包含一个web.xml文件, 该文件可帮助设置FacesServlet实例。你还可以设置应用程序欢迎页面等。
以下是此应用程序的web.xml代码。
// web.xml
< ?xml version="1.0" encoding="UTF-8"?> < web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"> < context-param> < param-name> javax.faces.PROJECT_STAGE< /param-name> < param-value> Development< /param-value> < /context-param> < servlet> < servlet-name> Faces Servlet< /servlet-name> < servlet-class> javax.faces.webapFacelet Titlep.FacesServlet< /servlet-class> < load-on-startup> 1< /load-on-startup> < /servlet> < servlet-mapping> < servlet-name> Faces Servlet< /servlet-name> < url-pattern> /faces/*< /url-pattern> < /servlet-mapping> < session-config> < session-timeout> 30 < /session-timeout> < /session-config> < welcome-file-list> < welcome-file> faces/index.xhtml< /welcome-file> < /welcome-file-list> < /web-app>

好!可以了, 好了。现在运行该应用程序。
一个简单的JavaServer Faces应用程序

文章图片
输出:
这是应用程序的索引页。
一个简单的JavaServer Faces应用程序

文章图片
表单验证为空字段。
一个简单的JavaServer Faces应用程序

文章图片
提供输入文字。
一个简单的JavaServer Faces应用程序

文章图片
【一个简单的JavaServer Faces应用程序】提交输入(索引)页面后的响应页面。
一个简单的JavaServer Faces应用程序

文章图片

    推荐阅读