DWR Conversion error for java.util.ArrayList

2015-07-24 01:55:50,123 [WARN] [org.directwebremoting.convert.CollectionConverter] - Conversion error for java.util.ArrayList.
org.directwebremoting.ConversionException: Error marshalling data. See the logs for more details.
	at org.directwebremoting.extend.PropertyDescriptorProperty.getValue(PropertyDescriptorProperty.java:74)
	at org.directwebremoting.convert.BasicObjectConverter.convertOutbound(BasicObjectConverter.java:299)
	at org.directwebremoting.impl.DefaultConverterManager.convertOutbound(DefaultConverterManager.java:447)
	at org.directwebremoting.convert.BasicObjectConverter.convertOutbound(BasicObjectConverter.java:300)
	at org.directwebremoting.impl.DefaultConverterManager.convertOutbound(DefaultConverterManager.java:447)
	at org.directwebremoting.convert.CollectionConverter.convertOutbound(CollectionConverter.java:213)
	at org.directwebremoting.impl.DefaultConverterManager.convertOutbound(DefaultConverterManager.java:447)
	at org.directwebremoting.convert.MapConverter.convertOutbound(MapConverter.java:216)
	at org.directwebremoting.impl.DefaultConverterManager.convertOutbound(DefaultConverterManager.java:447)
	at org.directwebremoting.extend.ScriptBufferUtil.createOutput(ScriptBufferUtil.java:68)
	at org.directwebremoting.dwrp.BaseCallHandler.marshallOutbound(BaseCallHandler.java:407)
	at org.directwebremoting.dwrp.BaseCallHandler.handle(BaseCallHandler.java:131)
	at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:211)
	at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:185)
	at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:144)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:395)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:166)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.hibernate.LazyInitializationException: could not initialize proxy - no Session
	at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:165)
	at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:286)
	at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:185)
	at emb.model.hibernate.po.pomessage_$$_jvst725_3.getMcountmid(pomessage_$$_jvst725_3.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.directwebremoting.extend.PropertyDescriptorProperty.getValue(PropertyDescriptorProperty.java:70)
	... 36 more

出现这个问题是因为数组越界了,或数组不存在

我的项目是由dwr返回了一个map,map里有一个list对象,这个list对象是查询的数据库,并且会关联查询另外一个数据库

然后将这个list给session

因此,当我管理查询的时候就会报错了

检查原因,此时应该设置配置文件为立即加载,而不是延迟加载即可。


爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情Blog Img