Anyway, I don't really understand, why is the ejb object actually being serialized. Do you store your service objects in session?
-Matej Igor Vaynberg wrote: > well, the problem might be that it is serialized by wicket itself. > this is done because you have the logger set to debug to help identify > things you put into session that might not be serializable. maybe the > container doesnt serialize the same way so when the container does it > its not a problem, but when wicket does it it is a problem. > > -Igor > > > On 7/5/06, Vincent Jenks <[EMAIL PROTECTED]> wrote: >> I don't know, I would believe that if I weren't able to make a >> Stateful bean and use it exactly how I did in Wicket, outside of this >> project. >> >> I setup a test project and their stateful/stateless beans work >> flawlessly when tested against JSP/Servlets....the problem arises w/ >> Wicket + SFSB on Glassfish. >> >> On 7/5/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote: >>> Caused by: java.io.NotSerializableExcepti >>> on: >>> com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075) >>> >>> looks like a bug in sun's impl of ejbs? >>> >>> -Igor >>> >>> >>> >>> On 7/5/06, Vincent Jenks <[EMAIL PROTECTED] > wrote: >>> I'm testing an app I just finished and is currently running on JBoss >>> on Sun's Glassfish (SJAS 9.0) to test compatibility and see if it's a >>> viable option going forward w/ our enterprise efforts. >>> >>> I seem to be having an issue w/ storing objects in session. Wicket >>> runs fine until I utilize the overridden ISessionFactory to store >>> objects - then I start getting exceptions like this: >>> >>> ********************************************************************** >>> >>> StandardWrapperValve[ProductCatalogApp]: Servlet.service() >>> for servlet >>> ProductCatalogApp threw exception >>> wicket.WicketRuntimeException: Internal error cloning object. Make >>> sure all dependent objects implement Serializable. Class: >>> com.myapp.ui.admin.UserSession >>> at >>> wicket.protocol.http.HttpSessionStore.setAttribute >>> (HttpSessionStore.java:62) >>> at wicket.Session.setAttribute(Session.java:914) >>> at wicket.Session.update(Session.java:938) >>> at >>> wicket.protocol.http.WebSession.update(WebSession.java:116) >>> at wicket.RequestCycle.detach(RequestCycle.java:818) >>> at wicket.RequestCycle.steps(RequestCycle.java:1052) >>> at wicket.RequestCycle.request(RequestCycle.java:453) >>> at wicket.protocol.http.WicketServlet.doGet >>> (WicketServlet.java:215) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:707) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:820) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.servletService >>> (ApplicationFilterChain.java:397) >>> at >>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:278) >>> at >>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566) >>> at >>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536) >>> at >>> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240) >>> at >>> org.apache.catalina.core.StandardContextValve.invoke >>> (StandardContextValve.java:179) >>> at >>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566) >>> at >>> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73) >>> at >>> org.apache.catalina.core.StandardHostValve.invoke >>> (StandardHostValve.java:182) >>> at >>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566) >>> at >>> com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120) >>> at >>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) >>> at >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137) >>> at >>> org.apache.catalina.core.StandardPipeline.doInvoke >>> (StandardPipeline.java:566) >>> at >>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536) >>> at >>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) >>> at org.apache.coyote.tomcat5.CoyoteAdapter.service >>> (CoyoteAdapter.java:231) >>> at >>> com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667) >>> at >>> com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java >>> :574) >>> at >>> com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844) >>> at >>> com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287) >>> at >>> com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212) >>> at >>> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252) >>> at >>> com.sun.enterprise.web.connector.grizzly.WorkerThread.run >>> (WorkerThread.java:75) >>> Caused by: java.io.NotSerializableException: >>> com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075) >>> at >>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369) >>> at >>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1341) >>> at java.io.ObjectOutputStream.writeOrdinaryObject >>> (ObjectOutputStream.java:1284) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073) >>> at >>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369) >>> at java.io.ObjectOutputStream.writeSerialData >>> (ObjectOutputStream.java:1341) >>> at >>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073) >>> at java.io.ObjectOutputStream.writeObject >>> (ObjectOutputStream.java:291) >>> at >>> wicket.protocol.http.HttpSessionStore.setAttribute(HttpSessionStore.java:56) >>> ... 33 more >>> >>> ********************************************************************** >>> >>> The ProductCatalogApp (my wicket application class) looks like this: >>> >>> public class ProductCatalogApp extends WebApplication >>> { >>> public void init() >>> { >>> //create external images resource >>> getSharedResources().add("imageResource", >>> new ImageResource()); >>> >>> //start timer services >>> TimerProxy.init(); >>> } >>> >>> public Class getHomePage() >>> { >>> return ProductCatalog.class; >>> } >>> >>> public ISessionFactory getSessionFactory() >>> { >>> return new ISessionFactory() >>> { >>> public Session newSession() >>> { >>> return new >>> UserSession(ProductCatalogApp.this); >>> } >>> }; >>> } >>> } >>> >>> UserSession looks like this: >>> >>> public class UserSession extends WebSession >>> { >>> private User user; >>> private ShoppingCart cart; >>> >>> public UserSession(WebApplication application) >>> { >>> super(application); >>> } >>> >>> public User getUser() >>> { >>> return this.user; >>> } >>> >>> public void setUser(User user) >>> { >>> this.user = user; >>> dirty(); >>> } >>> >>> public boolean authenticated() >>> { >>> if (this.getUser() == null) >>> return false; >>> else >>> return true; >>> } >>> >>> public ShoppingCart getCart() >>> { >>> return this.cart; >>> } >>> >>> public void setCart(ShoppingCart cart) >>> { >>> this.cart = cart; >>> dirty(); >>> } >>> } >>> >>> And all classes used in the UserSession class are serializable...I >>> even made the stateful ShoppingCartBean serializable (the User entity >>> already was) and it makes no difference. I'm fairly sure something >>> goes wrong w/ the Stateful ShoppingCartBean as I can login and use the >>> UserSession class (above) just fine - user authentication isn't >>> affected. Once I add items to my cart I get the exception and from >>> that point on - nothing session-based works and I get the exception if >>> I try to login again...or do anything that accesses the UserSession >>> class. >>> >>> Basically, I think Wicket + SFSB in Glassfish's EJB3 implementation >>> aren't playing nice together somehow...and I thought I'd get your >>> guys' opinions before I posted something on their forum. >>> >>> Thanks! >>> >>> -v >>> >>> Using Tomcat but need to do more? Need to support web services, security? >>> Get stuff done quickly with pre-integrated technology to make your job >>> easier >>> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >>> _______________________________________________ >>> Wicket-user mailing list >>> Wicket-user@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/wicket-user >>> >>> >>> Using Tomcat but need to do more? Need to support web services, security? >>> Get stuff done quickly with pre-integrated technology to make your job >>> easier >>> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >>> >>> >>> _______________________________________________ >>> Wicket-user mailing list >>> Wicket-user@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/wicket-user >>> >>> >>> >> Using Tomcat but need to do more? Need to support web services, security? >> Get stuff done quickly with pre-integrated technology to make your job easier >> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >> _______________________________________________ >> Wicket-user mailing list >> Wicket-user@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wicket-user >> > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Wicket-user mailing list > Wicket-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wicket-user > Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user