首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

Struts2配备精要之struts.xml( global和default的配置)

2012-08-26 
Struts2配置精要之struts.xml( global和default的配置)下面这个struts.xml囊括了所有可能用到的标签用法,

Struts2配置精要之struts.xml( global和default的配置)
下面这个struts.xml囊括了所有可能用到的标签用法,例如配置全局的异常处理<global-exception-mappings>全局结果result<global-results>,缺省action-class类名<default-class-ref />

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"    "http://struts.apache.org/dtds/struts-2.0.dtd"><struts><!-- 常量配置 --><constant name="..." value="..." /><constant name="struts.devMode" value="false" /><!-- 可以将每个功能模块独立到一个xml配置文件中 然后用include节点引用 --><include file="config/struts/struts_business.xml" /><!-- package的名字必须是唯一的 extends: 继承的父package名称 abstract: 设置package的属性为抽象的,抽象的package不能定义action, 像struts-default.xml定义的就是一个名为struts-default的抽象package, 开发者只需要继承这个package就行了 --><package name="package_name" extends="struts-default" namespace="/namespace"><!-- 定义结果类型,此标签最多出现一次 --><result-types><result-type name="..." /><result-type name="dispatcher" default="true"/></result-types><!-- 拦截器 此标签最多出现一次 --><interceptors><interceptor name="timer" /><interceptor name="logger" /><!-- 定义拦截器栈 --><interceptor-stack name="mystack"><interceptor-ref name="timer" /><interceptor-ref name="logger" /></interceptor-stack><interceptor-stack name="newStack"><interceptor-ref name="paramsPrepareParamsStack"></interceptor-ref><interceptor-ref name="token"><param name="includeMethods">submit</param></interceptor-ref></interceptor-stack></interceptors><!-- 设置默认的拦截器每个Action都会自动引用,如果action中引用了其它的拦截器 这里的默认的拦截器将无效 --><default-interceptor-ref name="newStack" /><!-- 当所在包对应namespace下没有匹配的action时,struts2会调用此默认的action --><default-action-ref name="unknown" /><!-- struts.xml默认的action类 action标签里面没有指定class时默认使用此值 --><default-class-ref /><!-- 全局results配置 --><global-results><result name="unknownError">/error.jsp</result><result name="noSession">/login.jsp</result></global-results><!-- 全局异常处理 一般搭配<global-results>使用 --><global-exception-mappings><exception-mapping exception="com.exception.UserException"result="noSession"><param name="namespace">/login</param></exception-mapping><exception-mapping exception="java.sql.SQLException" result="dbError" /><exception-mapping exception="java.lang.Exception" result="unknownError" /><exception-mapping exception="java.lang.RuntimeException" result="error"/></global-exception-mappings><!-- 这里使用了默认的<default-class-ref type="redirectAction"><param name="namespace">/admin</param><param name="actionName">index</param></result><result name="common" type="redirectAction"><param name="namespace">/common</param><param name="actionName">index</param></result><result name="safe" type="redirectAction"><param name="namespace">/safe</param><param name="actionName">index</param></result><result name="safeadmin" type="redirectAction"><param name="namespace">/safeadmin</param><param name="actionName">index</param></result></action><!--action配置 method默认值是execute --><action name="submit*" method="submit"><result>{1}/view.jsp</result><result name="input">{1}/edit.jsp</result><result name="invalid.token">{1}/view.jsp</result><exception-mapping result="input" exception="" /></action><action name="uploadCaseFile" /><result type="redirectAction"><param name="actionName"><![CDATA[listFiles?caseId=${caseId}]]></param><param name="namespace">/business</param></result><result name="input">/business/listCaseFiles.jsp</result></action><action name="downloadCaseFile" class="com.action.DownloadCaseFileAction"><result type="stream">     <param name="contentType">${contentType}</param>     <param name="contentLength">${contentLength}</param>         <param name="contentDisposition">attachment;filename="${name}"</param>     <param name="inputName">fileStream</param>         <param name="bufferSize">4096</param></result></action></package></struts> 

热点排行