恩……初用spring。不是很理解。
直接上代码
以下内容是struts.xml里面的:
<action name="GetAuthCodeAction" class="getAuthCodeAction" method="AuthCode">
    <result type="stream" name="succeed">  
        <param name="contentType">image/jpeg</param>  
         <param name="inputName">inputStream</param>  
     </result>
</action><action name="LogonAction" class="logonAction" method="logon">
    <result name="succeed">/</result>
    <result name="fail">/jsp/logon.jsp</result>
</action>
而以下内容是applicationContext.xml里面的:
<bean id="getAuthCodeAction" class="com.bm.action.PageAction" scope="prototype">
<property name="pageService">
<ref bean="pageService" />
</property>
</bean>

<bean id="logonAction" class="com.bm.action.UserAction" scope="prototype">
<property name="userService">
<ref bean="userService" />
</property>
</bean>

<bean id="pageService" class="com.bm.service.mysql.PageService" />

<bean id="userService" class="com.bm.service.mysql.UserService" />
其中前者GetAuthCode是一个获取验证码之类的action,使用时一切正常,
而后者是一个登陆用的action,每次使用都会报错说
java.lang.RuntimeException: Invalid action class configuration that references an unknown class named [logonAction]
。请问这是什么缘故。

解决方案 »

  1.   

    Invalid action class configuration that  references an unknown class named [logonAction]..
    貌似是说你logonAction这个action指向了一个未知的类,估计是你class路径错了或者是不是logonAction写错了..
    检查下看看<bean id="logonAction" class="com.bm.action.UserAction" >我也新手,个人看法。。
      

  2.   

    struts2-spring-plugin.jar有没有加这个jar依赖。
      

  3.   

    spring的错误要看最后一个堆栈,而不是第一个...
    你最好把出错信息贴出来
      

  4.   

    struts2的action类的配置,要把报名也写上...
    class="xxx.xxx.xxx.LoginAction"
      

  5.   

    现在好了。
    如果我是使用
    struts.xml:
    <action name="Action" class="action"></action>
    applicationContext.xml:
    <bean id="action" class="com.xx.action.Action" scope="prototype"></bean>
    就会出错。 
    而如果
    struts.xml:
    <action name="Action" class="com.xx.action.Action"></action>
    applicationContext.xml:
    <bean class="com.xx.action.Action" scope="prototype"></bean>
    这样就不会出错了。
    虽然前者,有时可行,但是貌似后者更加稳定。原因不是很清楚,不过既然后者可以使用,就这么用吧~~~
      

  6.   

    第一个使用了spring处理类的实例化第二个则调过了spring,直接使用struts控制类的实例化
      

  7.   


    楼主确定 你这样bean对象会被Spring管理?
      

  8.   

    首次遇到类似问题,在struts2和applicationContext.xml整合无误的情况下,出现该问题的原因就是struts.xml文件的页面跳转设置问题:1)action中的result的name与Action类中的返回值不一致 ,2)action中result的name与Action类一致的情况下,查看跳转页面是否存在,是否书写错误 ,3)在action中检查是否配置了Action类返回值对应的result项。
    通过这三种方式的排查,本人已顺利解决该类问题。希望对你有所帮助。