站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题创建Web应用和Struts框架的配置文件

创建Web应用和Struts框架的配置文件

摘要: 创建Web应用和Struts框架的配置文件


创建Web应用的配置文件

对于Struts应用,它的配置文件web.xml应该对ActionServlet类进行配置,此外,还应该声明Web应用所使用的Struts标签库,本例中声明使用了三个标签库: Struts Bean、Struts HTML和Struts Logic标签库。例程2-7为web.xml的源代码。

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1> <tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>

例程2-7  web.xml

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

 web-app

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

  "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">



  HelloApp Struts Application

 

  

    action

    org.apache.struts.action.ActionServlet

    

      config

      /WEB-INF/struts-config.xml

    

     2

  

 

  

    action

    *.do

  

 

  

    hello.jsp

  

 

  

    /WEB-INF/struts-bean.tld

    /WEB-INF/struts-bean.tld

  

  

    /WEB-INF/struts-html.tld

    /WEB-INF/struts-html.tld

  

  

    /WEB-INF/struts-logic.tld

    /WEB-INF/struts-logic.tld

  

</td></tr></table>

创建Struts框架的配置文件

正如前面提及的,Struts框架允许把应用划分成多个组件,提高开发速度。而Struts框架的配置文件struts-config.xml可以把这些组件组装起来,决定如何使用它们。例程2-8是helloapp应用的struts-config.xml文件的源代码。

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1> <tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>
例程2-8  struts-config.xml

<?xml version="1.0" encoding="ISO-8859-1" ?>

 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



   

    <form-beans>

        <form-bean name="HelloForm" type="hello.HelloForm"/>

    </form-beans>

 

  

   

    

        

    

  

 

  

</td></tr></table>


以上代码对helloapp应用的HelloForm、HelloAction和消息资源文件进行了配置,首先通过<form-bean>元素配置了一个ActionForm Bean,名叫HelloForm,它对应的类为hello.HelloForm:
<form-bean name="HelloForm" type="hello.HelloForm"/>

接着通过元素配置了一个Action组件:

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1> <tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>


        

</td></tr></table>


元素的path属性指定请求访问Action的路径,type属性指定Action的完整类名,name属性指定需要传递给Action的ActionForm Bean,scope属性指定ActionForm Bean的存放范围,validate属性指定是否执行表单验证,input属性指定当表单验证失败时的转发路径。元素还包含一个子元素,它定义了一个请求转发路径。

本例中的 元素配置了HelloAction组件,对应的类为hello.HelloAction,请求访问路径为"HelloWorld",当Action类被调用时,Struts框架应该把已经包含表单数据的HelloForm Bean传给它。HelloForm Bean存放在request范围内,并且在调用Action类之前,应该进行表单验证。如果表单验证失败,请求将被转发到接收用户输入的网页hello.jsp,让用户纠正错误。

struts-config.xml文件最后通过元素定义了一个Resource Bundle:

元素的parameter属性指定Resource Bundle使用的消息资源文件。本例中parameter属性为"hello.application",表明消息资源文件名为"application.properties",它的存放路径为WEB-INF/classes/hello/application.properties。



本文选自飞思图书《精通Struts:基于MVC的Java Web设计与开发》

</td> </tr> <tr> <td vAlign=top align=left height="100%">
↑返回目录
前一篇: JBuilder2005实战JSP之特殊页面
后一篇: 一个Struts实现分页,增删改查,Tiles,国际化的DEMO