当前位置: 代码迷 >> Web前端 >> webWork大局result实例应用
  详细解决方案

webWork大局result实例应用

热度:330   发布时间:2012-11-25 11:44:31.0
webWork全局result实例应用

为了应付目前已开发大量的一些action的现有情况,同时也要解决以前工作不要去改动,又实现一些新功能, 查阅了一下资料。

基础思路如下:

?

在现有已方平台基础上的最基础的baseAction中加入基础方法,同时在全局继承的基础package,加入基础result

类型为“重定向”。返回值由基础action的变量动态生成。然后基于这些,就可以实现很灵活的操作,又不需要去重构旧代码

?

?

<package name="mydefault" extends="webwork-default">
		<interceptors>
			<interceptor-stack name="coralStack">
				<interceptor-ref name="exception"/>
                <interceptor-ref name="alias"/>
                <interceptor-ref name="servlet-config"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="debugging"/>
                <interceptor-ref name="model-driven"/>
                <interceptor-ref name="fileUpload"/>
                <interceptor-ref name="static-params"/>
                <interceptor-ref name="params"/>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">delete,edit,execute,list,selectlist</param>
                </interceptor-ref>
                <interceptor-ref name="workflow">
                    <param name="excludeMethods">delete,edit,execute,list,selectlist</param>
                </interceptor-ref>
        	</interceptor-stack>
        </interceptors>
		<default-interceptor-ref name="coralStack" />
		<global-results>
            <result name="error">/errors/error.jsp</result>
            <!-- 全局返回的 -->
            <result name="_toPage" type="redirect-action">${_toPageUrl}</result>

        </global-results>
        <global-exception-mappings>
            <exception-mapping result="error" exception="java.lang.Throwable"/>
        </global-exception-mappings>
        
</package>

?

?

?

/**
 * 最基础的一个Controller,供继承
 * 
 */

abstract public class BaseAction extends ActionSupport{
	
	/**
	 * 返回名
	 */
	protected static final String RESULT_TOPAGE = "_toPage";
	
	private String _toPageUrl;
	
	public String get_toPageUrl() {
		return _toPageUrl;
	}

	public void set_toPageUrl(String pageUrl) {
		_toPageUrl = pageUrl;
	}

	/**
	 * 跳转的基础方法,在公共配置上也对应的配置上了公共返回名
	 * @return
	 */
	public String toPageUrl(){
		//测试 ../这个操作非常有用,因为webwork result中是相对路径,通过..可以调整路径,实现访问另一个模块
		//this._toPageUrl = "../admin/resourceIndex.do?flag=1.00";
		
		return RESULT_TOPAGE;
	}

?

?

?

  相关解决方案