要求:JDK1.4以上
下载:http://spaner.zj.com
示例:
<?XML version="1.0" encoding="UTF-8"?>
<!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>
//根元素必须对应一个java类,这里是WebApplicationLabel.java
//DocumentObject doc = new DocumentObject( "web-app" , WebApplicationLabel.class )
//参数"web-app"对应根元素标签的名称,以下同
<servlet>
//所有包含元素子结点的必须对应一个java类,这里是ServletLabel.java
//ElementObject serv=doc.addChild( ElementObject.MULTI , "servlet" ,ServletLabel.class , "servlets" );
//在此元素在web-app中可以有0到n个servlet(对应参数ElementObject.MULTI),在WebApplicationLabel.java中
//必须有一个属性ServletLabel[] servlets(这里名称可自定,对应下一行的最后一个参数)及它的set和get方法
//假如在web-app元素中有1到n个servlet元素,则第一个参数是ElementObject.MORETHANONE,并且在WebApplicationLabel.java中
//必须有一个属性ServletLabel[] servlets及它的set和get方法
//假如在web-app元素中只答应一个servlet元素,则第一个参数是ElementObject.SINGLE,并且在WebApplicationLabel.java中
//必须有一个属性ServletLabel servlet及它的set和get方法
//假如在web-app元素中有0或1个servlet元素,则第一个参数是ElementObject.OPTIONAL,并且在WebApplicationLabel.java中
//必须有一个属性ServletLabel servlet及它的set和get方法
<servlet-name>action</servlet-name>
//对于这种没有属性和元素子结点,只有文本子结点的元素,可以这样简单处理
//serv.addSimpleChild(ElementObject.SINGLE , "servlet-name" , String.class ,"name");
//此元素是servlet的子结点,所以向serv这个对象添加,而不是向doc中添加,
//其中第一个参数的处理与servlet元素相同,在ServletLabel.java中有一个属性String name及它的set和get方法,
//这个属性只能是基本数据类型或String,String.class是指它的数据类型,"name"是属性的名称,
//假如是基本数据类型(int,long)等,对应类型是Integer.TYPE,Long.TYPE等,
//如:addSimpleChild(Element.OPTIONAL,"lable-name",Integer.TYPE,"name");
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
//serv.addSimpleChild(ElementObject.SINGLE,"servlet-class",String.class,"servletClass");
//同servlet-name
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<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>
<servlet-mapping>