<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 32,comments - 8,trackbacks - 0
     

    Oops! JSF Quick Start!

    Purpose:

    學習使用一個JSF

    Precondition:


    /Files/pixysoft/jsf_simple_lib.part1.rar
    /Files/pixysoft/jsf_simple_lib.part2.rar


    Reference:
    http://www.exadel.com/tutorial/jsf/jsftutorial-kickstart.html#compile


    Tutorial:

    新建一個項目Dynamic Web Project,名字Oops_JSF



    lib目錄下添加以下jar文件



    修改
    web.xml


    <?xml version="1.0"?>

    <!DOCTYPE web-app PUBLIC 

     "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 

     "http://java.sun.com/dtd/web-app_2_3.dtd"
    >

    <web-app>

        
    <context-param>

            
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>

            
    <param-value>server</param-value>

        
    </context-param>

        
    <context-param>

            
    <param-name>javax.faces.CONFIG_FILES</param-name>

            
    <param-value>/WEB-INF/faces-config.xml</param-value>

        
    </context-param>

        
    <listener>

            
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>

        
    </listener>

        
    <!-- Faces Servlet -->

        
    <servlet>

            
    <servlet-name>Faces Servlet</servlet-name>

            
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>

            
    <load-on-startup> 1 </load-on-startup>

        
    </servlet>

        
    <!-- Faces Servlet Mapping -->

        
    <servlet-mapping>

            
    <servlet-name>Faces Servlet</servlet-name>

            
    <url-pattern>*.jsf</url-pattern>

        
    </servlet-mapping>

        

    </web-app>



    在WEB-INF目錄下面添加文件faces-config.xml


    <?xml version="1.0"?>

    <!DOCTYPE faces-config PUBLIC

     "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"

     "http://java.sun.com/dtd/web-facesconfig_1_1.dtd"
    >

    <faces-config>

     
    <navigation-rule>

       
    <from-view-id>/pages/inputname.jsp</from-view-id>

        
    <navigation-case>

         
    <from-outcome>greeting</from-outcome>

         
    <to-view-id>/pages/greeting.jsp</to-view-id>

       
    </navigation-case>

     
    </navigation-rule>

     
    <managed-bean>

        
    <managed-bean-name>personBean</managed-bean-name>

        
    <managed-bean-class>jsfks.PersonBean</managed-bean-class>

        
    <managed-bean-scope>request</managed-bean-scope>

     
    </managed-bean>

    </faces-config>


    在WebContent下面添加pages目錄,然后新建2個文件

    greeting.jsp

     

    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>

    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>

    <f:loadBundle basename="jsfks.bundle.messages" var="msg"/>

    <html>

     
    <head>

       
    <title>greeting page</title>

     
    </head>    

     
    <body>

         
    <f:view>

            
    <h3>

         
    <h:outputText value="#{msg.greeting_text}"/>,

         
    <h:outputText value="#{personBean.personName}"/>

             
    <h:outputText value="#{msg.sign}"/>

        
    </h3>

         
    </f:view>

     
    </body>   

    </html>



    inputname.jsp

    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>

    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>

    <f:loadBundle basename="jsfks.bundle.messages" var="msg"/>

    <html>

     
    <head>

     
    <title>enter your name page</title>

     
    </head>

     
    <body>

       
    <f:view>

         
    <h1>

          
    <h:outputText value="#{msg.inputname_header}"/>

         
    </h1>

         
    <h:form id="helloForm">

          
    <h:outputText value="#{msg.prompt}"/>

          
    <h:inputText value="#{personBean.personName}"/>

          
    <h:commandButton action="greeting" value="#{msg.button_text}"/>

         
    </h:form>

       
    </f:view>

     
    </body>

    </html> 



    WebContent目錄下面添加一個index.jsp文件

     

    <html>

     
    <body>

     
    <jsp:forward page="/pages/inputname.jsf" />

     
    </body>

    </html>

     

    src目錄下面添加jsfks目錄,再添加PersonBean.java文件


    package jsfks;

    publicclass PersonBean {

       String personName;

        

       
    /**

       *@returnPersonName

       
    */

      
    public String getPersonName() {

          returnpersonName;

       }

       
    /**

       *@paramPersonName

       
    */

       publicvoid setPersonName(String name) {

          personName 
    = name;

       }

    }


    jsfks目錄下添加bundle目錄,再添加文件messages.properties

    inputname_header=JSFKickStart

    prompt
    =Tellusyourname:

    greeting_text
    =WelcometoJSF

    button_text
    =SayHello

    sign
    =!



    最后整個文件夾為:



    最后
    Run as … On Server




    注意:一定要把之前的
    server配置刪除,run as 的時候是一個新的server,就因為這個原因我忙了幾個小時,才發現出錯是因為之前存在了另外一個roject在server上,也不提示。

    posted on 2007-09-04 18:39 張辰 閱讀(358) 評論(0)  編輯  收藏 所屬分類: Dr. Oops
    主站蜘蛛池模板: 亚洲精品免费观看| 国产亚洲蜜芽精品久久| 亚洲AV综合色区无码二区偷拍| 亚洲午夜在线播放| 国产免费区在线观看十分钟 | 亚洲欧洲日韩在线电影| 香蕉视频在线观看免费| 久久国产免费观看精品3| 日本一道高清不卡免费| 麻豆亚洲AV永久无码精品久久| 亚洲大尺度无码无码专线一区| 最近2019中文免费字幕在线观看| 大陆一级毛片免费视频观看| 亚洲伦理一区二区| 一级毛片在线观看免费| 国产偷国产偷亚洲高清日韩| 亚洲AV综合永久无码精品天堂| 成人男女网18免费视频| 久久久久久亚洲AV无码专区| 8090在线观看免费观看| 亚洲国产成人精品无码区在线秒播 | 亚洲人成网站在线在线观看| 在线a免费观看最新网站| 亚洲精品成人网站在线观看| 一级特级aaaa毛片免费观看 | 青青青国产免费一夜七次郎| 亚洲国产综合人成综合网站00| 最近中文字幕免费mv视频7| 国产精品亚洲综合| 日本亚洲欧洲免费天堂午夜看片女人员| 亚洲av无码一区二区三区在线播放 | 日本最新免费不卡二区在线| 成在线人视频免费视频| 亚洲?V无码成人精品区日韩 | 亚洲乱人伦精品图片| 日本免费中文字幕在线看| www一区二区www免费| 亚洲性久久久影院| 色哟哟国产精品免费观看 | 亚洲国产精品久久久久网站 | 国产精品成人观看视频免费|