配置struts.xml
<!-- 定义全局package -->
<package name="defaultpackage" extends="struts-default">
<interceptors>
<interceptor-stack name="defStack">
<interceptor-ref name="defaultStack"></interceptor-ref>
<!--把自己的拦截器添加到定义的拦截器栈里面-->
<interceptor-ref name="sessionNull"></interceptor-ref>
</interceptor-stack>
<!--定义自己的拦截器-->
<interceptor name="sessionNull" class="com.jyjsf.interceptor.SessionNullInterceptor" />
</interceptors>
<!--调用拦截器-->
<default-interceptor-ref name="defStack" />
<!--定义全局结果集-->
<global-results>
<result name="sessionnull">
/login.jsp
</result>
</global-results>
</package>
添加拦截器类
public class SessionNullInterceptor extends AbstractInterceptor {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
public String intercept(ActionInvocation invocation) throws Exception {
User u=(User) ActionContext.getContext().getSession().get("user");
if(u!=null){
return invocation.invoke();
}
return "sessionnull";
}
}
所有Action类继承这个全局package
//@Component("userAciton")
/*
* 用户的Action类
* @author DZWei
*/
@ParentPackage(value = "defaultpackage")//应用全局包
@Scope("prototype")
@Namespace("/")
public class UserAction extends BaseAction {
@Action(value = "initializationAction", results = {
@Result(name = "success", location = "XXXXXXXXX"),
@Result(name = "fail", location = "XXXXXXX") })
public String initialization() throws Exception {
................................................
}
}
488

被折叠的 条评论
为什么被折叠?



