ssh+json at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372) 15

ssh结合jar冲突报:java.lang.NullPointerException:atorg.hibernate.tuple.AbstractEntityTupliz... ssh结合jar冲突报:java.lang.NullPointerException:at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)
网上说一是把lazy设为false或是把hibernate cglib.2.13.jar更新到2.2版本,或是直接删掉用spring 的cglib-nodep-2.2.jar替换。
我现遇到的问题是当:当json = JSONArray.fromObject(cs,config);
却又报回org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)
数据都可以从hibernate拿到了,就是不知为什么 JSONArray.fromObject还报原来:java.lang.NullPointerException:at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)
错误!

java.lang.NullPointerException
at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)
at org.hibernate.persister.entity.AbstractEntityPersister.createProxy(AbstractEntityPersister.java:3121)
at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:232)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:173)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:862)
at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:830)
at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266)
at org.hibernate.type.EntityType.resolve(EntityType.java:303)
at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:116)
at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:842)
at org.hibernate.loader.Loader.doQuery(Loader.java:717)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
at org.hibernate.loader.Loader.loadCollection(Loader.java:1919)
at org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:36)
at org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:520)
at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:60)
at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1676)
at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344)
at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86)
action主要代码部分:
GetCompanyForm copaFrom=(GetCompanyForm) form;
ccId=copaFrom.getCcId();
JsonConfig config = new JsonConfig();
config.setJsonPropertyFilter(new PropertyFilter()
{
public boolean apply(Object source, String name, Object value) {
System.out.println("name2="+name);
if(name.equals("districts")||name.equals("ccompanies")||name.equals("ccompany")) {
return true;
} else {
return false;
}
}
});
if(ccId!=null){
cs=ajaxDao.getCompany(ccId);
Iterator<Ccompany> i=cs.iterator();
while(i.hasNext()){
System.out.println(i.next().getCName());
}
json = JSONArray.fromObject(cs,config);
try {
response.getWriter().print(json.toString());
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
展开
 我来答
LHLBT3GOOD
2010-03-19 · TA获得超过546个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:534万
展开全部
这个跟你的json插件的jar有关
也就是你的struts2的配置

以前版本的json的插件,是没有继承 struts-defaut这个父类的,导致了
直接引入json插件的时候,写json为返回类型肯定会报错

需要把jar解开,然后再配置上加入 struts-defaut的继承关系,然后再打包成
jar,之后再项目里面的struts-xml配置中,只需要继承json-defaut就行了!

更简单的办法,加载最新的json插件包,里面已经改好了的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3ca5458
2010-03-19 · TA获得超过104个赞
知道小有建树答主
回答量:425
采纳率:55%
帮助的人:101万
展开全部
最新的不一定是最好的,从你的需求看,不需要这么复杂。
你这个问题,看看自带的帮助就能解决了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式