posts - 40,  comments - 7,  trackbacks - 0

          創(chuàng)建Web應(yīng)用的配置文件

          對于Struts應(yīng)用,它的配置文件web.xml應(yīng)該對ActionServlet類進行配置,此外,還應(yīng)該聲明Web應(yīng)用所使用的Struts標(biāo)簽庫,本例中聲明使用了三個標(biāo)簽庫: Struts Bean、Struts HTML和Struts Logic標(biāo)簽庫。例程1為web.xml的源代碼。

          例程1 web.xml

          <?xml version="1.0" encoding="UTF-8"?>

          <!DOCTYPE web-app
          PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
          "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

          < web-app >

          < display-name >
          HelloApp Struts Application
          </display-name >

          <!-- Standard Action Servlet Configuration -->

          < servlet >

          < servlet-name > action </servlet-name >

          < servlet-class >
          org.apache.struts.action.ActionServlet
          < /servlet-class >

          < init-param >
          < param-name> config< /param-name >
          < param-value>
          /WEB-INF/struts-config.xml
          </param-value >
          </init-param >

          < load-on-startup>2</load-on-startup >

          </servlet>

          <!-- Standard Action Servlet Mapping -->

          < servlet-mapping>

          < servlet-name > action</servlet-name>

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

          </servlet-mapping>

          <!-- The Usual Welcome File List -->

          < welcome-file-list>

          < welcome-file > hello.jsp</welcome-file>

          </welcome-file-list>

          <!-- Struts Tag Library Descriptors -->

          < taglib >

          < taglib-uri >
          /WEB-INF/struts-bean.tld
          </taglib-uri>

          < taglib-location>
          /WEB-INF/struts-bean.tld
          </taglib-location>

          </taglib>

          < taglib >

          < taglib-uri >
          /WEB-INF/struts-html.tld
          </taglib-uri >

          < taglib-location >
          /WEB-INF/struts-html.tld
          </taglib-location >

          </taglib >

          < taglib >

          < taglib-uri >
          /WEB-INF/struts-logic.tld
          </taglib-uri >

          < taglib-location >
          /WEB-INF/struts-logic.tld
          </taglib-location >

          </taglib >

          </web-app >

          創(chuàng)建Struts框架的配置文件

          正如前面提及的,Struts框架允許把應(yīng)用劃分成多個組件,提高開發(fā)速度。而Struts框架的配置文件struts-config.xml可以把這些組件組裝起來,決定如何使用它們。例程2是helloapp應(yīng)用的struts-config.xml文件的源代碼。

          例程2  struts-config.xml
          <?xml version="1.0" encoding="ISO-8859-1" ?>
          <!DOCTYPE struts-config
          PUBLIC"-//Apache Software Foundation
          //DTD Struts Configuration 1.1//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

          <!--This is the Struts configuration file
          for the "Hello!" sample application-->
          < struts-config>
          <!-- ===== Form Bean Definitions ====== -->
          < form-beans>
          < form-bean name="HelloForm" type="hello.HelloForm"/>
          </form-beans>
          <!-- ====== Action Mapping Definitions ====== -->
          < action-mappings>
          <!-- Say Hello! -->
          < action path="/HelloWorld"
          type="hello.HelloAction"
          name="HelloForm"
          scope="request"
          validate="true"
          input="/hello.jsp"
          >
          < forward name="SayHello" path="/hello.jsp" />
          </action >
          </action-mappings >
          <!-- ===== Message Resources Definitions ===== -->
          < message-resources parameter="hello.application"/>
          </struts-config >


          以上代碼對helloapp應(yīng)用的HelloForm、HelloAction和消息資源文件進行了配置,首先通過元素配置了一個ActionForm Bean,名叫HelloForm,它對應(yīng)的類為hello.HelloForm:



          接著通過元素配置了一個Action組件: 
          < action
          path = "/HelloWorld"
          type ="hello.HelloAction"
          name = "HelloForm"
          scope = "request"
          validate = "true"
          input = "/hello.jsp"
          >
          < forward name="SayHello" path="/hello.jsp" />
          </action >

          元素的path屬性指定請求訪問Action的路徑,type屬性指定Action的完整類名,name屬性指定需要傳遞給Action的ActionForm Bean,scope屬性指定ActionForm Bean的存放范圍,validate屬性指定是否執(zhí)行表單驗證,input屬性指定當(dāng)表單驗證失敗時的轉(zhuǎn)發(fā)路徑。元素還包含一個子元素,它定義了一個請求轉(zhuǎn)發(fā)路徑。

          本例中的 元素配置了HelloAction組件,對應(yīng)的類為hello.HelloAction,請求訪問路徑為"HelloWorld",當(dāng)Action類被調(diào)用時,Struts框架應(yīng)該把已經(jīng)包含表單數(shù)據(jù)的HelloForm Bean傳給它。HelloForm Bean存放在request范圍內(nèi),并且在調(diào)用Action類之前,應(yīng)該進行表單驗證。如果表單驗證失敗,請求將被轉(zhuǎn)發(fā)到接收用戶輸入的網(wǎng)頁hello.jsp,讓用戶糾正錯誤。

          struts-config.xml文件最后通過元素定義了一個Resource Bundle:元素的parameter屬性指定Resource Bundle使用的消息資源文件。本例中parameter屬性為"hello.application",表明消息資源文件名為"application.properties",它的存放路徑為WEB-INF/classes/hello/application.properties。

          posted on 2006-08-17 19:43 Lansing 閱讀(331) 評論(0)  編輯  收藏 所屬分類: Java
          <2006年8月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          歡迎探討,努力學(xué)習(xí)Java哈

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          Lansing's Download

          Lansing's Link

          我的博客

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 余干县| 永德县| 台州市| 大庆市| 来凤县| 荔波县| 南郑县| 资中县| 镇雄县| 彭泽县| 南昌县| 孟连| 毕节市| 周宁县| 中阳县| 田阳县| 虹口区| 凤冈县| 灌南县| 平利县| 如东县| 黎平县| 民和| 婺源县| 隆昌县| 兴仁县| 甘孜| 新疆| 平定县| 南通市| 山东省| 民县| 沙坪坝区| 夏河县| 富顺县| 鹿邑县| 吉安市| 黑龙江省| 顺义区| 嘉义市| 九寨沟县|