最进自己在家写项目用到struts2和jquery。一个list页面,之前的search表单使用submit button来提交到action的,但是页面会刷新,之前的search 条件就没得了。所以考虑换成用jquery的ajax来写。之前我值把list和分页的数据放到值栈里的,在jsp页面用struts标签来显示。现在用$.ajax来写,就不能想以前那样直接在页面获取值了。需要这样配置
<package name="user1" extends="json-default" namespace="/">
<action name="paginationAjax" class="timeLineAction"
method="paginationAjax">
<result name="success" type="json">
<!-- 这里指定将被Struts2序列化的属性,该属性在action中必须有对应的getter方法 -->
</result>
</action>
</package>
extends=”json-default”记住这点,这里要strut会帮我们方法里的对象转换成json。
需要加入下面的包:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-json-plugin</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.1</version>
<classifier>jdk15</classifier>
</dependency>
问题马上就出来了,你很可能遇到上面标特的log信息。这是由于你的
struts2-core-2.3.16.3.jar
struts2-json-plugin-2.3.16.jar
这两个包的版本不同引起的,修改到一致。