读书人

ssh协作这样配置是否正确

发布时间: 2012-09-11 10:49:03 作者: rapoo

ssh合作,这样配置是否正确
struts 2.3 spring3.1 hibernate3.6
web.xml

  <context-param>    <param-name>contextConfigLocation</param-name>    <param-value>classpath:root-context.xml</param-value>  </context-param>  <listener>    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  </listener>  <filter>    <filter-name>struts2</filter-name>    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <filter-mapping>    <filter-name>struts2</filter-name>    <url-pattern>/*</url-pattern>  </filter-mapping>

struts.xml
<constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /> <package name="default" namespace="/" extends="json-default"> <action name="*_*" method="{2}"> <result>/WEB-INF/views/admin/{1}_list.jsp</result> </action> </package>

action代码
@Scope("prototype")@Controller("naviAction")public class NaviAction {private Navigation navi;public String add() {return "add";}//getter and setterpublic void setNavi(Navigation navi) {this.navi = navi;}}

页面
<form id="channel_form" action="Navi_add" method="post"><input name="navi.name" type="text"><input name="navi.rank" type="text"><input name="navi.link" type="text"><input name="navi.type" type="text"><input type="submit"></form>


提交的结果是navi对象里只有一个属性有值
浏览器请求中所有的属性都post了
debug,action中setNavi执行了几次,属性都是空,进入add方法后navi里只有一个属性有值。

不知道我这中使用方法有什么问题,为什么属性set不进去。

我的思路是spring注解管理bean,struts直接找spring里的action对象

读书人网 >编程

热点推荐