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 張辰 閱讀(359) 評論(0)  編輯  收藏 所屬分類: Dr. Oops
          主站蜘蛛池模板: 镇江市| 金平| 横山县| 西安市| 孙吴县| 安顺市| 阿巴嘎旗| 霸州市| 玉环县| 化州市| 台北县| 墨脱县| 清新县| 巢湖市| 天祝| 永川市| 永顺县| 南京市| 大方县| 灵山县| 锦州市| 汝州市| 五大连池市| 阿鲁科尔沁旗| 汝阳县| 民丰县| 盘锦市| 永州市| 盱眙县| 内黄县| 理塘县| 清河县| 抚州市| 商南县| 高平市| 麦盖提县| 基隆市| 邳州市| 高碑店市| 磴口县| 常州市|