struts2交给spring管理之后表单提交的字段无法注入
如题。
这是提交页面:
<div align="center" class="register">
<form action="/course/studentRegisterAction" method="post">
<table class="register_table">
<caption>学生注册信息表单</caption>
<tbody>
<tr>
<td>学生学号:</td>
<td><input type="text" name="sid" required="required"/></td>
</tr>
<tr>
<td><button type="submit">提交</button></td>
<td><button type="reset">重置</button></td>
</tr>
</tbody>
</table>
</form>
</div>
<constant name="struts.i18n.encoding" value="UTF-8"/>
<!-- 将struts交给spring进行管理 -->
<constant name="struts.objectFactory" value="spring"/>
<constant name="struts.devMode" value="true"/>
<constant name="struts.serve.static.browserCache" value="false"/>
<constant name="truts.action.extension" value="action,do"/>
<constant name="struts.configuration.xml.reload" value="true"/>
<!-- 设置目标缓存文件位置
<constant name="struts.multipart.saveDir" value="D:\\temp"/>
-->
<package name="org.course.action" extends="struts-default">
<action name="studentRegisterAction" class="studentRegisterHandler">
<result>/index.jsp</result>
</action>
</package>
@Transactional
@Controller
public class StudentRegisterHandler extends ActionSupport {
private static final long serialVersionUID = -520L;
private String sid;
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
@Override
public String execute() throws Exception {
System.out.println(getSid());
return SUCCESS;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<filter>
<filter-name>struts</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
<!-- <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> -->
<init-param>
<param-name>config</param-name>
<param-value>
struts-default.xml,struts-plugin.xml,config/struts/struts.xml
</param-value>
</init-param>
</filter>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
<!-- classpath:config/spring/applicationContext*.xml -->
classpath:config/spring/applicationContext.xml
</param-value>
</context-param>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
<?xml version="1.0" encoding="UTF-8"?>
<beansdefault-autowire="no"
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd">
<context:component-scan base-package="org.course"/>
<context:annotation-config/>
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceUnitName" value="course" />
</bean>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>
</beans>
<package name="org.course.action" extends="struts-default">
<action name="studentRegisterAction" class="studentRegisterHandler">
<result>/index.jsp</result>
</action>
</package>