2016-11-08 43 views
0

我正在使用Maven工作struts2.5.5。元素类型“拦截器”的内容必须匹配“(param)*”

我在拦截器标签错误:

元素类型"interceptor"的内容必须在struts.xml的文件匹配"(param)*"

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" 
    "http://struts.apache.org/dtds/struts-2.5.dtd"> 
<struts> 
    <package name="default" namespace="/action" extends="struts-default"> 
     <interceptors> 
     <interceptor name="authenticationInterceptor" class="AuthenticationInterceptor"> 
     <interceptor-stack name="secureStack"> 
      <interceptor-ref name="authenticationInterceptor"></interceptor-ref> 
      <interceptor-ref name="defaultStack"></interceptor-ref> 
     </interceptor-stack> 
     </interceptor> 
    </interceptors> 
    <action name="login"> 
     <result>login.jsp</result> 
    </action> 
    <action name="LoginAction" class="LoginAction"> 
     <result name="success" type="redirectAction"> 
     <param name="actionName">task</param> 
     <param name="namespace">/action</param> 
     </result> 
     <result name="input">login.jsp</result> 
    </action> 
    </package> 
</struts> 

回答

0

拦截元素未关闭:

<interceptor name="authenticationInterceptor" class="AuthenticationInterceptor"> 

因此它试图将<interceptor-stack>声明作为正文,而他预计只有在该位置的<param>元素。

只是自我密切标签:

<interceptor name="authenticationInterceptor" class="AuthenticationInterceptor" /> 
相关问题