配置struts2全局拦截器、全局变量

该博客详细介绍了如何配置Struts2的全局拦截器,包括设置各种常量如locale、devMode等,并定义了权限拦截器`PermissionsInterceptor`。同时,展示了如何创建不同的拦截器堆栈,如`basicStack`、`tokenStack`和`uploadStack`,以应对不同场景的需求。此外,还设置了全局结果和异常映射,确保了应用的正常运行。
<?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>
	<!-- Constants -->
	<constant name="struts.locale" value="zh_CN" />
	<constant name="struts.devMode" value="false" />
	<constant name="struts.i18n.encoding" value="UTF-8" />
	<constant name="struts.i18n.reload" value="true" />
	<constant name="struts.configuration.xml.reload" value="true" />
	<constant name="struts.action.extension" value="do" />
	<constant name="struts.objectFactory" value="spring" />
	<constant name="struts.objectFactory.spring.autoWire" value="name" />
	<constant name="struts.mapper.class" value="struts" />
	<constant name="struts.custom.i18n.resources" value="i18n/messages" />
	<constant name="struts.multipart.maxSize" value="50000000" />
	<constant name="struts.ui.theme" value="simple" />
	<constant name="struts.enable.SlashesInActionNames" value="false" />
	<constant name="struts.url.includeParams" value="none" />
	<constant name="struts.serve.static" value="true" />
	<constant name="struts.serve.static.browserCache" value="false" />
	<constant name="struts.convention.result.path" value="/" />
	<constant name="struts.multipart.saveDir" value="/tmp" />

	<!-- Configuration for the default package. -->
	<package name="default" extends="struts-default">
		<interceptors>
			<interceptor-stack name="basicStack">
				<interceptor-ref name="exception">
					<param name="logEnabled">true</param>
					<param name="logLevel">error</param>
				</interceptor-ref>
				<interceptor-ref name="servletConfig" />
				<interceptor-ref name="prepare" />
				<interceptor-ref name="i18n" />
				<interceptor-ref name="checkbox" />
				<interceptor-ref name="params" />
				<interceptor-ref name="conversionError" />
				<interceptor-ref name="permissionsInterceptor"></interceptor-ref>
			</interceptor-stack>
			<interceptor name="permissionsInterceptor"
				class="com.supermap.earth.rims.interceptor.PermissionsInterceptor" />
				
			<interceptor-stack name="chainStack">
				<interceptor-ref name="chain" />
				<interceptor-ref name="basicStack" />
			</interceptor-stack>
			<!-- 参数拒绝重复提交的拦截器堆栈 -->
			<interceptor-stack name="tokenStack">
				<interceptor-ref name="token" />
				<interceptor-ref name="basicStack" />
			</interceptor-stack>
			<!-- 带文件上传的参数拦截器堆栈 -->
			<interceptor-stack name="uploadStack">
				<interceptor-ref name="fileUpload" />
				<interceptor-ref name="basicStack" />
			</interceptor-stack>
		</interceptors>
		<default-interceptor-ref name="basicStack" />
		<global-results>
		   <result name="input">/logOut.jsp</result>
		</global-results>
		
		<global-exception-mappings>
			<exception-mapping result="error" exception="java.lang.Exception" />
		</global-exception-mappings>
	</package>
	<package name="struts-default-permissionsInterceptor" extends="default">
		<!-- interceptors>
			<interceptor name="permissionsInterceptor"
				class="com.supermap.earth.web.interceptor.PermissionsInterceptor" />
			<interceptor-stack name="mydefault">
				<interceptor-ref name="defaultStack" />
				<interceptor-ref name="permissionsInterceptor" />
			</interceptor-stack>
		</interceptors -->
		<default-interceptor-ref name="mydefault" />
	</package>
	<include file="struts/rims/struts-*.xml" />
</struts>


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值