java.io.NotSerializableException: org.hibernate.util.MarkerObject解决办法

来源:互联网 发布:淘宝虚拟物品交易规则 编辑:程序博客网 时间:2024/06/05 11:52
java.io.NotSerializableException: org.hibernate.util.MarkerObject      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      atorg.hibernate.engine.StatefulPersistenceContext.serialize(StatefulPersistenceContext.java:1368)      at org.hibernate.impl.SessionImpl.writeObject(SessionImpl.java:1976)      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)      atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)     atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)      at java.lang.reflect.Method.invoke(Method.java:597)      atjava.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)      atjava.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      at java.util.HashMap.writeObject(HashMap.java:1001)      at sun.reflect.GeneratedMethodAccessor399.invoke(Unknown Source)     atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)      at java.lang.reflect.Method.invoke(Method.java:597)      atjava.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)      atjava.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      atjava.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)      atjava.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:416)      atorg.springframework.webflow.core.collection.LocalAttributeMap.writeObject(LocalAttributeMap.java:327)      at sun.reflect.GeneratedMethodAccessor468.invoke(Unknown Source)     atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)      at java.lang.reflect.Method.invoke(Method.java:597)      atjava.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)      atjava.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      atorg.springframework.webflow.engine.impl.FlowSessionImpl.writeExternal(FlowSessionImpl.java:154)      atjava.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1421)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1390)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      at java.util.LinkedList.writeObject(LinkedList.java:943)      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)      atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)     atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)      at java.lang.reflect.Method.invoke(Method.java:597)      atjava.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)      atjava.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      atorg.springframework.webflow.engine.impl.FlowExecutionImpl.writeExternal(FlowExecutionImpl.java:312)      atjava.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1421)      atjava.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1390)      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)      atorg.springframework.webflow.execution.repository.snapshot.SerializedFlowExecutionSnapshot.serialize(SerializedFlowExecutionSnapshot.java:173)      atorg.springframework.webflow.execution.repository.snapshot.SerializedFlowExecutionSnapshot.<init>(SerializedFlowExecutionSnapshot.java:70)      atorg.springframework.webflow.execution.repository.snapshot.SerializedFlowExecutionSnapshotFactory.createSnapshot(SerializedFlowExecutionSnapshotFactory.java:70)      atorg.springframework.webflow.execution.repository.snapshot.AbstractSnapshottingFlowExecutionRepository.snapshot(AbstractSnapshottingFlowExecutionRepository.java:75)      atorg.springframework.webflow.execution.repository.impl.DefaultFlowExecutionRepository.putFlowExecution(DefaultFlowExecutionRepository.java:126)      atorg.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:171)      atorg.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)      atorg.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)      atorg.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)      atorg.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)      atorg.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)      at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)      atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)      atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)      atcom.nissan.dbs.web.filter.DBSVerifyFilter.doFilter(DBSVerifyFilter.java:208)      atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)      atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)      at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)      at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)      atorg.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)      at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)      atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)      atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)      atorg.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)      atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)      atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)      atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)      atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)      atorg.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)      atorg.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)      atorg.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)      atorg.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)      atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)      atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)      atorg.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)      atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)      atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)      atorg.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)      atorg.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)      atorg.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)      at java.lang.Thread.run(Thread.java:619)
很多使用hibernate的程序员们都会碰到这个异常,这个是异常是因为hibernate的一个bug引起的:在3.3版本的hibernate-core.jar中,该对象没有被序列化,所以会抛出这个异常,用3.6版本的hibernate-core替换掉3.3版本的就可以了。如果是在jboss中,还需要替换掉jboss中common/lib下的hibernate-core.jar包,这样就不会在出现这样的错误了,因为我自己遇到这个问题,查了很久,所以在这里记录一下,希望能对其他的网友们有所帮助:
原创粉丝点击