webwork自行义过滤器以及配置文件常用写法

看了朋友的项目配置,对比自己的,于是有了点心得,纠正下错误

编写一个过滤器实现Interceptor接口
package com.web.vk.tools;

import java.util.Map;

import com.opensymphony.xwork.ActionContext;
import com.opensymphony.xwork.ActionInvocation;
import com.opensymphony.xwork.interceptor.Interceptor;
import com.web.vk.tools;
public class AdminInterceptor implements Interceptor ...{
    public static final String login= "LOGIN";

    public AdminInterceptor () {

    }

    public void destroy() {

    }

    public void init(){

    }

    public String intercept(ActionInvocation arg0) throws Exception {

         Map session = ActionContext.getContext().getSession(); 
       if (session.get("user") == null) { return login; }
       return  arg0.invoke();

    }

}


然后再写一个webwork的配置文件 base-xwork.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.1.1//EN"
    "http://www.opensymphony.com/xwork/xwork-1.1.1.dtd">
<xwork>
    <include file="webwork-default.xml" />
    <package name="base-xwork" extends="webwork-default">
        <interceptors>
            <interceptor name="AdminInterceptor"
                class="com.web.vk.tools.AdminInterceptor">
            </interceptor>
            <interceptor-stack name="baseStack">
                <interceptor-ref name="exception" />
	       <interceptor-ref name="model-driven" />
	       <interceptor-ref name="params" />
                <interceptor-ref name="AdminInterceptor"></interceptor-ref>
            </interceptor-stack>
        </interceptors>
        <default-interceptor-ref name="baseStack"></default-interceptor-ref>
        <global-results>
            <result name="LOGIN" type="redirect">/login.jsp</result>
        </global-results>
    </package>
</xwork>

然后在需要实现拦截器的各个action继承base-xwork即可
show-xwork.xml
 
    <package name="show" extends="base-xwork">
        <action name="showAction"
            class="com.web.vk.actions.showAction">
            <result name="success" >main.jsp</result>
        </action>
    </package>

最后在xwork.xml中
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "xwork-1.0.dtd" >
<xwork>
	<include file="webwork-default.xml" />

	<include file="xwork/base-xwork.xml" />
	<include file="xwork/show-xwork.xml" />

</xwork>

你可能感兴趣的:(xml,jsp,Web,Webwork)