struts2的配置文件
<action name="login" class="userAction"> <result name="success">/admin/welcome.jsp</result> <result name="input">/admin/login.jsp</result> <result name="fail">/admin/login.jsp</result> </action>
spring配置文件
<bean id="userAction" class="com.user.action.UserLoginAction" scope="prototype">
<property name="userService">
<ref bean="userService"/>
</property>
</bean>
struts配置文件中找不到userAction,需要添加struts2-spring-plugin.jar
<引用>
当引入这个插件后,原先所struts创建的action类,交给了spring创建。在struts2-spring-plugin.jar中有一个 struts-plugin.xml,里面声明了action类由spring工厂创建。在struts2插件文档里,这样写着“The Spring Plugin works by overriding the Struts ObjectFactory to enhance the creation of core framework objects 。 ”这个插件重写了struts的对象工厂,当创建一个action类时,它会根据struts的配置文件的class属性的值与spring配置文件中的id属性的值相匹配。如果没有与之相匹配,将会像没有使用这个插件前一样创建,然后由spring自动装配。