The content of element type "package" must match "(result-types?,interceptors?,default-interceptor-r

本文解析了一个Struts2配置错误案例,详细分析了在Struts配置文件中出现两个default-interceptor-ref标签导致的错误,并给出了正确的配置方法,强调了default-interceptor-ref标签的唯一性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误如下

The content of element type "package" must match "(result-types?,interceptors?,default-interceptor-ref?,default-action-ref?,default-class-ref?,global-results?,global-exception-mappings?,action*)".

百度了很久,大部分都说


在package包中有 的配置标签是有顺序的:

result-types
interceptors
default-interceptor-ref
default-action-ref
default-class-ref
global-results
global-exception-mappings
action*(就是所有的action放到最后)


上面的确是大部分都犯过的错,但是我的错误不是这个原因

错误代码

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<constant name="struts.action.extension" value="do,action,kk"></constant>

	<package name="tjn" extends="struts-default">
		<!-- 配置使用paramsPrepareParamsStack作为默认的拦截器栈 修改 PrepareInterceptor拦截器alaysInvokePrepare属性为false -->
		<interceptors>
			<interceptor-stack name="tjn">
				<interceptor-ref name="paramsPrepareParamsStack">
					<param name="prepare.alwaysInvokePrepare">false</param>
				</interceptor-ref>
			</interceptor-stack>
		</interceptors>
		<default-interceptor-ref name="tjn"></default-interceptor-ref>
		<!-- -使用paramsPrepareParamsStack -->
		<default-interceptor-ref name="paramsPrepareParamsStack"></default-interceptor-ref>

		<action name="goods_selectinfo" class="goodsDao" method="select_info">
			<result name="goodsinfo">/selectinfo.jsp</result>
		</action>
		<action name="text" class="cgoods" method="select_info">
			<result name="hello">/selectinfo.jsp</result>
		</action>
	</package>
</struts>
<!-- -->

错误原因是因为有两个default-interceptor-ref标签,实际上这个标签的是唯一的!

<default-interceptor-ref name="**"></default-interceptor-ref>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_37591637

请给我持续更新的动力~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值