That's what I'm thinking: The session opened for the action request is still open when the render request comes and opens its session. Thus, my person object, which is one-to-many with subscription payment methods, triggers the collection error. I haven't figured out how to debug this one. My hibernate is now in fully non-managed mode. I.e., I explicitly open and close the sessions on every request in my DAOs.
Bill On 6/22/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote:
Could this be related to the split between the action request and the render request? On 6/22/07, Bill Holloway <[EMAIL PROTECTED]> wrote: > wait wait...this is a hibernate error. i wanna go back to > tapestry-hibernate, but then i get "Illegal attempt to assoc. > collection w/ 2 open sessions". Grrrr. > > On 6/22/07, Bill Holloway <[EMAIL PROTECTED]> wrote: > > Hmmm. Well, now the error is different. Here's my page template: > > > > <html t:type="shell" title="Edit Credit Card" > > xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > > > > <body t:type="border" t:id="editCreditCard"> > > > > <t:beaneditform object="creditCardInfo" /> > > > > </body> > > </html> > > > > In EditCreditCard.java, onActivate (calling a DAO) gets a good value > > for _creditCardInfo. Know that by debugging. Here's some of the > > error page: > > > > # org.apache.tapestry.ioc.internal.util.TapestryException > > Failure reading parameter value of component > > core/PropertyEditBlocks:textfield: could not initialize proxy - the > > owning Session was closed > > > > location > > classpath:org/apache/tapestry/corelib/pages/PropertyEditBlocks.html, > > line 5, column 30 > > 1 <div xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > > 2 > > 3 <t:block id="text"> > > 4 <t:label for="textField"/> > > 5 <input t:id="textField"/> > > 6 </t:block> > > 7 > > 8 <t:block id="enum"> > > 9 <t:label for="select"/> > > 10 <input t:id="select"/> > > > > # org.hibernate.LazyInitializationException > > could not initialize proxy - the owning Session was closed > > > > messages > > [Ljava.lang.String;@d0e87c > > throwableCount > > 1 > > throwables > > [Ljava.lang.Throwable;@ea924a > > Stack trace > > > > * org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:60) > > * org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:111) > > * org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:140) > > * com.crimsonata.billing.entities.CreditCardInfo$$EnhancerByCGLIB$$280e8ace.getExpMonth(<generated>) > > * org.apache.tapestry.internal.services.CoercingPropertyConduitWrapper.get(CoercingPropertyConduitWrapper.java:36) > > * org.apache.tapestry.corelib.components.BeanEditForm$1.getPropertyValue(BeanEditForm.java:204) > > * org.apache.tapestry.internal.bindings.PropBinding.get(PropBinding.java:54) > > * org.apache.tapestry.internal.structure.InternalComponentResourcesImpl.readParameter(InternalComponentResourcesImpl.java:204) > > * org.apache.tapestry.corelib.base.AbstractTextField._$read_parameter_value(AbstractTextField.java) > > * org.apache.tapestry.corelib.base.AbstractTextField.begin(AbstractTextField.java:139) > > * org.apache.tapestry.corelib.base.AbstractTextField.beginRender(AbstractTextField.java) > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl$10$1.run(ComponentPageElementImpl.java:345) > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:931) > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.access$100(ComponentPageElementImpl.java:69) > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl$10.render(ComponentPageElementImpl.java:349) > > * org.apache.tapestry.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:57) > > * org.apache.tapestry.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:40) > > * org.apache.tapestry.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:45) > > * org.apache.tapestry.internal.services.PageRenderDispatcher$1.renderPage(PageRenderDispatcher.java:82) > > * org.apache.tapestry.internal.services.PageLinkHandlerImpl.handle(PageLinkHandlerImpl.java:89) > > * org.apache.tapestry.internal.services.PageLinkHandlerImpl.handle(PageLinkHandlerImpl.java:49) > > * org.apache.tapestry.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:91) > > * org.apache.tapestry.services.TapestryModule$12.service(TapestryModule.java:1067) > > * com.crimsonata.billing.services.AppModule$1.service(AppModule.java:64) > > * org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43) > > * org.apache.tapestry.services.TapestryModule$3.service(TapestryModule.java:667) > > * org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:63) > > * org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:91) > > * org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:82) > > * org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77) > > * org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:104) > > * org.apache.tapestry.services.TapestryModule$11.service(TapestryModule.java:1045) > > * org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:135) > > * org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:821) > > * org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:471) > > * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568) > > * org.mortbay.http.HttpContext.handle(HttpContext.java:1530) > > * org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:633) > > * org.mortbay.http.HttpContext.handle(HttpContext.java:1482) > > * org.mortbay.http.HttpServer.service(HttpServer.java:909) > > * org.mortbay.http.HttpConnection.service(HttpConnection.java:820) > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > Thanks appreciated! > > > > > > On 6/21/07, Daniel Jue <[EMAIL PROTECTED]> wrote: > > > > Thanks for your hard work Howard! > > > > > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > > ... and I'm uploading new snapshots right now. > > > > > > > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > > > Don't add another bug; I've checked in a change under TAPESTRY-1423. > > > > > > > > > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > > > > Ooh. I think I see what's happening ... I may need to re-work the fix > > > > > > > a little. I fixed in in terms of the PropertyBindingFactory, but not > > > > > > > as used here, to order properties for the BeanModel. Please add a > > > > > > > bug! > > > > > > > > > > > > > > > > > > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > > > > > Interesting! I thought the bug was fixed. It's supposed to be > > > > > > > > working its way up the class hierarchy until it gets to a class it > > > > > > > > knows about. I wonder what's up? > > > > > > > > > > > > > > > > On 6/21/07, Bill Holloway <[EMAIL PROTECTED]> wrote: > > > > > > > > > Should have included this. This is from my Eclipse console upon > > > > > > > > > closing/re-opening the project: > > > > > > > > > > > > > > > > > > 6/21/07 7:30:28 PM CDT: [DEBUG] tapestry-core: resolved to version > > > > > > > > > 5.0.5-20070616.164652-6 from repository tapestry-snapshots > > > > > > > > > > > > > > > > > > Bill > > > > > > > > > > > > > > > > > > On 6/21/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > > > > > > > This is a known bug in 5.0.4 that should be fixed in the > > > > > > > > > > 5.0.5-SNAPSHOT. It relates to some classloader issues caused by the > > > > > > > > > > mix of Tapestry, Javassist, Hibernate, and CGLIB. > > > > > > > > > > > > > > > > > > > > On 6/21/07, Bill Holloway <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > I have a component that needs to edit an object passed in as a > > > > > > > > > > > parameter. Right now, the component does so by calling beaneditform > > > > > > > > > > > on that parameter object. In this configuration I get the error > > > > > > > > > > > below. Interestingly if I set a breakpoint just before return in the > > > > > > > > > > > get method for the object passed in as a parameter, the parameter > > > > > > > > > > > appears to be null. If, from the getXXX method, I simply do "return > > > > > > > > > > > new CreditCardInfo()," it works. > > > > > > > > > > > > > > > > > > > > > > error info: > > > > > > > > > > > > > > > > > > > > > > org.apache.tapestry.ioc.internal.util.TapestryException > > > > > > > > > > > Unable to lookup class > > > > > > > > > > > com.crimsonata.billing.entities.CreditCardInfo$$EnhancerByCGLIB$$4fc9dc60: > > > > > > > > > > > com.crimsonata.billing.entities.CreditCardInfo$$EnhancerByCGLIB$$4fc9dc60 > > > > > > > > > > > > > > > > > > > > > > Here's some stack trace: > > > > > > > > > > > > > > > > > > > > > > javassist.NotFoundException > > > > > > > > > > > com.crimsonata.billing.entities.CreditCardInfo$$EnhancerByCGLIB$$4fc9dc60 > > > > > > > > > > > > > > > > > > > > > > Stack trace > > > > > > > > > > > > > > > > > > > > > > * javassist.ClassPool.get(ClassPool.java:417) > > > > > > > > > > > * org.apache.tapestry.ioc.internal.services.CtClassSource.getCtClass(CtClassSource.java:65) > > > > > > > > > > > * org.apache.tapestry.ioc.internal.services.ClassFactoryImpl.getMethodLocation(ClassFactoryImpl.java:130) > > > > > > > > > > > * org.apache.tapestry.internal.TapestryInternalUtils.orderProperties(TapestryInternalUtils.java:394) > > > > > > > > > > > * org.apache.tapestry.internal.services.BeanModelSourceImpl.create(BeanModelSourceImpl.java:102) > > > > > > > > > > > * org.apache.tapestry.corelib.components.BeanEditForm.onPrepareFromForm(BeanEditForm.java:253) > > > > > > > > > > > * org.apache.tapestry.corelib.components.BeanEditForm.handleComponentEvent(BeanEditForm.java) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.handleEvent(ComponentPageElementImpl.java:885) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.triggerEvent(ComponentPageElementImpl.java:998) > > > > > > > > > > > * org.apache.tapestry.internal.structure.InternalComponentResourcesImpl.triggerEvent(InternalComponentResourcesImpl.java:147) > > > > > > > > > > > * org.apache.tapestry.corelib.components.Form.beginRender(Form.java:227) > > > > > > > > > > > * org.apache.tapestry.corelib.components.Form.beginRender(Form.java) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl$10$1.run(ComponentPageElementImpl.java:345) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:931) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl.access$100(ComponentPageElementImpl.java:69) > > > > > > > > > > > * org.apache.tapestry.internal.structure.ComponentPageElementImpl$10.render(ComponentPageElementImpl.java:349) > > > > > > > > > > > * org.apache.tapestry.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:57) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:40) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:45) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageRenderDispatcher$1.renderPage(PageRenderDispatcher.java:82) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageLinkHandlerImpl.handle(PageLinkHandlerImpl.java:89) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageLinkHandlerImpl.handle(PageLinkHandlerImpl.java:49) > > > > > > > > > > > * org.apache.tapestry.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:91) > > > > > > > > > > > * org.apache.tapestry.services.TapestryModule$12.service(TapestryModule.java:1061) > > > > > > > > > > > * com.crimsonata.billing.services.AppModule$1.service(AppModule.java:64) > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > > > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > Howard M. Lewis Ship > > > > > > > > > > TWD Consulting, Inc. > > > > > > > > > > Independent J2EE / Open-Source Java Consultant > > > > > > > > > > Creator and PMC Chair, Apache Tapestry > > > > > > > > > > Creator, Apache HiveMind > > > > > > > > > > > > > > > > > > > > Professional Tapestry training, mentoring, support > > > > > > > > > > and project work. http://howardlewisship.com > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > Howard M. Lewis Ship > > > > > > > > TWD Consulting, Inc. > > > > > > > > Independent J2EE / Open-Source Java Consultant > > > > > > > > Creator and PMC Chair, Apache Tapestry > > > > > > > > Creator, Apache HiveMind > > > > > > > > > > > > > > > > Professional Tapestry training, mentoring, support > > > > > > > > and project work. http://howardlewisship.com > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > Howard M. Lewis Ship > > > > > > > TWD Consulting, Inc. > > > > > > > Independent J2EE / Open-Source Java Consultant > > > > > > > Creator and PMC Chair, Apache Tapestry > > > > > > > Creator, Apache HiveMind > > > > > > > > > > > > > > Professional Tapestry training, mentoring, support > > > > > > > and project work. http://howardlewisship.com > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Howard M. Lewis Ship > > > > > > TWD Consulting, Inc. > > > > > > Independent J2EE / Open-Source Java Consultant > > > > > > Creator and PMC Chair, Apache Tapestry > > > > > > Creator, Apache HiveMind > > > > > > > > > > > > Professional Tapestry training, mentoring, support > > > > > > and project work. http://howardlewisship.com > > > > > > > > > > > > > > > > > > > > > -- > > > > > Howard M. Lewis Ship > > > > > TWD Consulting, Inc. > > > > > Independent J2EE / Open-Source Java Consultant > > > > > Creator and PMC Chair, Apache Tapestry > > > > > Creator, Apache HiveMind > > > > > > > > > > Professional Tapestry training, mentoring, support > > > > > and project work. http://howardlewisship.com > > > > > > > > > > --------------------------------------------------------------------- > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > -- > > > Howard M. Lewis Ship > > > TWD Consulting, Inc. > > > Independent J2EE / Open-Source Java Consultant > > > Creator and PMC Chair, Apache Tapestry > > > Creator, Apache HiveMind > > > > > > Professional Tapestry training, mentoring, support > > > and project work. http://howardlewisship.com > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Howard M. Lewis Ship TWD Consulting, Inc. Independent J2EE / Open-Source Java Consultant Creator and PMC Chair, Apache Tapestry Creator, Apache HiveMind Professional Tapestry training, mentoring, support and project work. http://howardlewisship.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]