struts2与struts1整合,Unable to load configuration. - interceptor-ref ... struts.xml

struts.xml中为了与struts1的MVC模式整合,需要类似如下的拦截器的引用

<interceptor-stack name="integration">
                <interceptor-ref name="static-params"/>
                <interceptor-ref name="loginForm"/>
                <interceptor-ref name="model-driven"/>
                <interceptor-ref name="actionForm-reset"/>
                <interceptor-ref name="basicStack"/>
                <interceptor-ref name="actionForm-validation"/>
                <interceptor-ref name="workflow"/>
            </interceptor-stack>

这里面拦截器的name有问题(我是从教材的源代码直接拷贝过来的)

查看struts2-struts1-plugin-2.3.16.3.jar里面的struts-plugin.xml

可以看到上面引用的拦截器的名字是

<interceptors>
            <interceptor name="actionForm-reset" class="org.apache.struts2.s1.ActionFormResetInterceptor"/>
            <interceptor name="actionForm-validation" class="org.apache.struts2.s1.ActionFormValidationInterceptor"/>
            <interceptor name="actionForm-commonsValidation" class="org.apache.struts2.s1.ActionFormValidationInterceptor">
              <param name="pathnames">/org/apache/struts/validator/validator-rules.xml,/WEB-INF/validation.xml</param>
            </interceptor>
            <interceptor-stack name="struts1Stack">
          <interceptor-ref name="staticParams"/>
          <interceptor-ref name="scopedModelDriven"/>
          <interceptor-ref name="modelDriven"/>
                <interceptor-ref name="actionForm-reset"/>
                <interceptor-ref name="basicStack"/>
                <interceptor-ref name="actionForm-validation"/>
                <interceptor-ref name="workflow"/>
        </interceptor-stack>
        </interceptors>

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

所以,应该是staticParams,modelDriven,而不是static-params,model-driven

 

posted @ 2014-06-18 15:48  rldts  阅读(424)  评论(0编辑  收藏  举报