异常形式:
Class org.apache.struts2.json.JSONWriter can not access a member of * 或是 Class com.googlecode.jsonplugin.JSONWriter can not access a member of class*
第一种是struct2.1.8与json结合时的异常,第二种是struct2.1.6与json结合的异常。
具体:
Class org.apache.struts2.json.JSONWriter can not access a member of class oracle.jdbc.driver.BaseResultSet with modifiers "public"
解释:
不能把程序中的某种数据结构串行化成json格式。
原因:
struts2的action里面的数据转换成json数据时,会将提供了get方法的属性都串行化输出JSON到客户端。有的时候,很多属性并不能串行化成json数据,比如这里的oracle.jdbc.driver.BaseResultSet。这时还进行强行转换就会出现这样的异常。
解决方法:
在不能串行化到json的属性相应的get方法前加一条json标记 @JSON(serialize=false)。告诉json不需要转化这个属性。或者根本不写这个get方法。
后记:
对于不需要在前台输出的json数据,也可以用同样的方法进行处理,从而减少服务器和客户端间交互的信息量。
可在需要在前台输出的属性的get方法前加上@JSON(name="status")标识,从而为该属性起了一个别名,在前台就可以通过status作为属性名来读取其值。
相关推荐
jsonplugin源码包,struts2 ajax jsonplugin源码,源码学习
1、Json插件制作,暴露给蓝图的是非静态类函数。 2、lib引用,打包后无需再拷贝
jsonplugin插件,以及在用json传输时需要导入必须的jar包
http://code.google.com/p/jsonplugin/ 1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录 注:struts2的json插件有两个版本0.32和0.34,我用的struts2的版本是2.0.11,在加入0.34版本json插件时启动发生异常,...
搭配Struts2.0.*使用,自己使用过了哦,大家一起学习,jsonplugin-0.32.jar
1268047053905-integrated.jnlp jsonplugin-0.32.jar
jsonplugin-0.32.jar jsonplugin.jar包
第一次上传,要5分,是物有所值,处理了jsonplugin 的no session的问题,并且添加了,新的注释,例如 @JSON(exclude='对象的名称') 就可以剔除 解决json与Hibernate之间的大部分问题 1.数据只取三层 2.对one-ton-many ,...
jsonplugin-0.33.jar 找了好久 和struts2.16配套的
jsonplugin-0.31.jar 使用JSON的一个架包.
struts2后台直接返回json对象,ajax开发必备
java structs jsonplugin
该压缩包内包含三个jar文件,其功能和jsonplugin.jar文件相同,用于和struts2.1.8整合,转换json数据格式供extjs使用
NULL 博文链接:https://yabar.iteye.com/blog/258693
包括struts2的jar包,共33个非常全的,实用的。还有jsonplugin-0.33.jar包
最新Struts2.3.8 + jquery + ajax + ... 注意:要导入import com.googlecode.jsonplugin.annotations.JSON; 4. 获取json中的数据可以通过访问对象的方式 如:json_targer.attributeName 访问attaributeName中的信息
jxl.jar;dom4j.jar;jsonplugin-0.34.jar;junit-3.8.2.jar;log4j-1.2.14.jar;struts2-codebehind-plugin-2.0
1、将struts2的json插件加入web工程的lib,jsonplugin的下载地址:http://code.google.com/p/jsonplugin/downloads/list