JSF开发

简介:
前言: 
    JavaServer Faces (JSF) 是一种用于构建 Web 应用程序的新标准 Java 框架。它提供了一种以组件为中心来开发 Java Web 用户界面的方法,从而简化了开发。JavaServer Faces 还引起了广大 Java/Web 开发人员的兴趣。“企业开发人员”和 Web 设计人员将发现 JSF 开发可以简单到只需将用户界面 (UI) 组件拖放到页面上,而“系统开发人员”将发现丰富而强健的 JSF API 为他们提供了无与伦比的功能和编程灵活性。JSF 还通过将良好构建的模型-视图-控制器 (MVC) 设计模式集成到它的体系结构中,确保了应用程序具有更高的可维护性。最后,由于 JSF 是通过 Java Community Process (JCP) 开发的一种 Java 标准,因此开发工具供应商完全能够为 JavaServer Faces 提供易于使用的、高效的可视化开发环境。 

    本文将通过使用MyEclipse来开发一个小的JSF Demo应用程序。从而能使读者快速上手来进行JSF开发。 

    一. 环境要求 
    • JDK 1.4+ (Sun or IBM) 
    •  http://java.sun.com/j2se/downloads/index.html 
    • Eclipse 3.1 SDK 
    •  http://www.eclipse.org/downloads/index.php 
    • MyEclipse 4.1 
    •  http://www.myeclipseide.com/ContentExpress-displ......ay-ceid-10.html 
    • Tomcat 5.x (5.5.9 Preferred, or other compliant Servlet/EJB container) 
    •  http://jakarta.apache.org/tomcat/index.html 

    二. 创建工程 
    我们需要在MyEclipse中创建Web Project,通过File > New > Other > Project > J2EE > Web Project来进行创建。如图2.1 

    Figure 2.1: Create a new web project


    Figure 2.2: Web Project Wizard Dialog 
    注意:开发JSF应用程序推荐使用JSTL类库,因此在创建工程时选择“JSTL Libraries”,也可以在后面通过MyEclipse 内容的菜单中“Add JSTL Libraries”来添加。 

    工程创建好以后,需要添加JSF Capabilities,通过右键点击工程,选择MyEclipse > Add JSF Capabilities,如图2.3 


    Figure 2.3: Adding JSF Capabilities to a Web Project 
    按照默认的设置,点击“Finish” 


    Figure2.4: Configuring JSF Capabilities 
    向导完成以后,工程结构会增加许多类库,如图2.5:


    Figure 2.5: Project Layout After Configuration 
    至此,工程已经创建完了,下面我们要开始编辑和创建应用程序。 
  三. 创建Message Bundle
    Message Bundle文件是一个简单的属性文件,存储与keys相关的消息,提供国际化支持,也可以用在JSP页面中。Struts也提供了类似的文件ApplicationResources.properties。 

    在JSF中,可以在页面中加载message bundle使用如下代码:<f:loadBundle basename="com.jsfdemo.MessageBundle" var= "bundle"/> 
    在创建message bundle文件之前,在src文件中通过右键选择“New > Package”来创建com.jsfdemo包。使用新键文件向导来创建message bundle文件,如图3.1:


    Figure 3.1: Creating the Message Bundle file 

    创建完MessageBundle.properties文件以后,要添加在JSP页面显示的每个标签的key/value对或者是文本字符串。可以复制下面中的内容到message bundle文件中。 
    MessageBundle.properties 
    user_name_label=User Name: 
    user_password_label=Password: 
    login_button_label=Login 

    MessageBundle.properties文件的内容 

    MessageBundle文件创建完以后,下一步,我们要创建ManagedBean以处理用户登录。 

     四. 创建 Managed Beans 
    这部分我们将创建Managed Beans来执行login操作,在这个Demo中,登录操作就是简单的核对用户名和密码是否都是myeclipse,并将页面转向到userLoginSuccess.jsp。 

    首先用MyEclipse JSF Editor打开faces-config.xml文件 



    Figure 4.1: Opening faces-config.xml file for editing 
    点击右上角的Add ManagedBean来添加新的bean,如图所示:


    Figure 4.2: Launch the ManagedBean wizard from the Outline View 
    点击以后出现新的Managed Bean向导,如图所示添加值


    Figure 4.3: Setup the new ManagedBean's class and properties 


    Figure 4.4: Managed Bean Wizard Final Page
接下来添加h:inputSecret(不是lable)


    Figure 5.8 Adding new inputSecret component


    Figure 5.9 Adding new inputSecret component continued 

    现在添加username和password的输出标签. 


    Figure 5.10: Adding outputLabel component to our userName component 

    以同样的方式来增加h:inputSecret标签,这些做完以后,手动改变h:outputLabel 和 h:outputText的位置,如下所示: 


    Figure 5.11: Adding outputText components to our labels 

    最后添加login按钮,添加的方式和前面差不多.


    Figure 5.12: Adding a new commandButton component 


    Figure 5.13: Adding a new commandButton component continued

 

 

    Figure 5.12: Adding a new commandButton component 


    Figure 5.13: Adding a new commandButton component continued

现在的页面如下所示:


    Figure 5.14: Our almost-complete userLogin.jsp page 

    至此, userLogin.jsp已经建立完毕, userLoginSuccess.jsp的建立更简单,简单的增加一个打印输出用户登录的姓名即可. 


    Figure 5.16: Making userLoginSuccess.jsp page print out the user's name 

    现在,这两个页面已经建立完毕,还有就是二者之间的关系还没有建立,打开faces-config.xml 的设计界面,按照以下步骤来进行关联: 
    1. 点击导航工具 
    2. 点击userLogin.jsp文件 
    3. 点击userLoginSuccess.jsp文件 
    4. 使用向导来快速创建转向 
    按照以下步骤来创建成功时的页面转向情况和失败时的页面转向情况. 


    Figure 5.17: Creating the success navigation case


    Figure 5.18: Creating the success navigation case continued 
    二者成功创建以后的关系如图所示: 


    Figure 5.19: Reviewing navigation cases for our app 

    至此,整个应用中所需的文件都已经建立起来了.接下来就是部署和运行该应用程序.
   六.运行应用程序
    按照以下的方式来部署应用



    Figure 6.2: Creating the new deployment for our project


    Figure 6.3: Successful Deployment 
    启动Tomcat 5服务器. 


    打开浏览器,在地址栏内输入: http://localhost:8080/JSFLoginDemo/userLogin.faces出现用户登录界面


    Figure 6.4: Accessing the Example Application 

    输入用户名和密码,点击Login按钮 


    Figure 6.4: Logging in...

本文转自kenty博客园博客,原文链接http://www.cnblogs.com/kentyshang/archive/2007/07/09/811523.html如需转载请自行联系原作者

kenty
相关文章
|
存储 前端开发 Java
Java Web框架,如Spring MVC,是一种用于构建Web应用程序的软件框架:学生考试Web应用程序
Java Web框架,如Spring MVC,是一种用于构建Web应用程序的软件框架。它们提供了一种结构化的方法,用于处理Web请求、生成动态内容和管理Web应用程序的组件。以下是关于Java Web框架和Spring MVC的详细解释,以及如何使用Spring MVC创建一个简单的Web应用程序的示例代码。
123 0
|
开发框架 Java 关系型数据库
dwz4j企业级Java Web快速开发框架(Mybatis + SpringMVC) + jUI整合应用
dwz4j企业级Java Web快速开发框架(Mybatis + SpringMVC) + jUI整合应用
228 0
|
Web App开发 Apache
MyFaces Core v2.0.7/2.1.1 发布,JSF框架
MyFaces是 JSF (JavaServerFaces) Web框架 (JSR 127)的一个实现。JavaServer(tm) Faces Web框架是一个新的实现MVC模式的规范。 这两个版本优化了 UIComponent EventListenerWrapper ,然后就是修复了一些bug。
759 0
|
前端开发 Java 容器
Springboot Application 集成 OSGI 框架开发
Java 类加载器 启动类加载器 (Bootstrap ClassLoader) 是 Java 类加载层次中最顶层的类加载器,负责加载 JDK 中的核心类库,如:rt.jar、resources.jar、charsets.jar 等 扩展类加载器(Extension ClassLoader) 负责加载 Java 的扩展类库,默认加载 JAVA_HOME/jre/lib/ext/目下的所有 jar 应用类加载器(Application ClassLoader) 负责加载应用程序 classpath 目录下的所有 jar 和 class 文件。
2797 0