ajax框架与SSH交互总返回error
FireFox查看异常显示
Class org.apache.struts2.json.JSONWriter can not access a member of class org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper with modifiers "public"
发现一个规律,凡是在struts2 pojo action中有对象属性的,并被hibernate管理的,都会出现这种问题。因为hibernate会给每个被管理的对象加上hibernateLazyInitializer属性,同时struts-jsonplugin或者其他的jsonplugin都是通过java的反射机制将pojo转换成json的,但是hibernateLazyInitializer无法由反射得到,所以就抛异常了。
这种问题同样发生在spring mvc的通过ajax访问SSH2中。
解决方法:
第一种方法:将POJO Action中hibernate管理对象的get方法去掉,同时在struts2的struts.xml文件中的<result type="json"></result>加入<param name="excludeProperties">.*hibernateLazyInitializer</param>:
<result type="json">
<param name="excludeProperties">.*hibernateLazyInitializer</param>
</result>
用于使用struts-jsonplugin的情况。
第二种方法:在pojo的类上加入annotation来排除hibernateLazyInitializer 这个属性:
annotation:
@JsonIgnoreProperties(value={"hibernateLazyInitializer"})
用于使用jackson来转移json对象的情况。
相关推荐
Ajax里jQuery的ajax与ssh三框架的集成与总和
Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架Ajax框架
ajax里response返回的数据是一个二维数组,比如这样的[{key,val},{key,val},{key,val}],以这样的形式数据传到前台,实现菜单联动下拉框,具体详解,请看文档
使用三大框架写ajax系统,充分利用AJAX技术实现所需要的效果
基于AJAX和SSH集成框架的国有资产管理系统基于AJAX和SSH集成框架的国有资产管理系统基于AJAX和SSH集成框架的国有资产管理系统
json ajax ajax框架 json ajax ajax框架
ssh框架+apicloud交互的完整案例 ssh框架做第三方接口
ssha三大框架加上ajax
基于SSH框架与AJAX技术的Java-Web应用开发.pdf
ASP.NET Ajax框架与组件
这是基于SSH框架写的用Ajx刷新的例子,附加的有数据库。有两个功能,1:下拉框动态读取数据库数据,jsp页面为xlkAjax.jsp;2:判断用户注册时用户名是否存在,jsp页面为login.jsp。希望对大家有用,记得给个好评哈
ajax框架项目ajax框架项目ajax框架项目ajax框架项目ajax框架项目ajax框架项目ajax框架项目ajax框架项目
四种流行的AJAX框架.doc 四种流行的AJAX框架.doc四种流行的AJAX框架.doc 四种流行的AJAX框架.doc 四种流行的AJAX框架.doc
ajax与数据库的数据交互问题,实现与数据库的数据交互操作。
AJAX框架 v4.0 AJAX网站框架应用,AJAX网站集成,AJAX效果应用。
我自己有点用,网上也有 ssh2 ajax jquery 知识 ssh2 ajax jquery 知识 ssh2 ajax jquery 知识 ssh2 ajax jquery 知识
jquery ajax框架jquery ajax框架jquery ajax框架jquery ajax框架jquery ajax框架
是AJAX效果实例,与数据库交互实例,里面有上百个实例,标记的很清楚.一起学习
简单的SSH三层架构+Ajax实现Google自动搜索极为相似版+直接Excel导入数据库 附加数据库时请将数据库的名字改为 student_manage
ajax与后台交互案例组件,本组件为入门级ajax的web应用!