[
https://issues.jboss.org/browse/RF-12608?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Brian Leathem updated RF-12608:
-------------------------------
Original Estimate: 3 hours
Remaining Estimate: 3 hours
> pickList without collectionType results in failure to lazily load
> -----------------------------------------------------------------
>
> Key: RF-12608
> URL: https://issues.jboss.org/browse/RF-12608
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 4.2.3.Final, 4.3.0.M2
> Reporter: Ken H
> Labels: regression
> Fix For: 4.3.0.CR1
>
> Original Estimate: 3 hours
> Remaining Estimate: 3 hours
>
> Changes to the selectManyHelper class in 4.2.3+ causes a lazy loading
> exception in hibernate when the backing collection is persistent and is not
> eagerly loaded.
> The problem seems to be that fetching the collection in
> SelectManyHelper.getConvertedValue bypasses the PersistentSet getter that
> would normally issue the lazy load request.
> Defining the collectionType (e.g. java.util.ArrayList) bypasses this issue.
> Ideally this method would detect Hibernate proxy collections and handle them
> appropriately. However, I realize that may cause a dependency so perhaps it
> would be enough to document this option and situation in the component
> reference.
> The stack trace for the exception is below:
> {code}
> [org.richfaces.log.Context] (http-localhost-127.0.0.1-8080-1) failed to
> lazily initialize a collection, no session or session was closed:
> org.hibernate.LazyInitializationException: failed to lazily initialize a
> collection, no session or session was closed
> at
> org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:393)
> [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
> at
> org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:385)
> [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
> at
> org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:378)
> [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
> at
> org.hibernate.collection.internal.AbstractPersistentCollection.write(AbstractPersistentCollection.java:208)
> [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
> at
> org.hibernate.collection.internal.PersistentBag.add(PersistentBag.java:291)
> [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
> at
> org.richfaces.renderkit.SelectManyHelper.getConvertedValue(SelectManyHelper.java:350)
> [richfaces-components-ui-4.2.3.Final.jar:4.2.3.Final]
> at
> org.richfaces.renderkit.SelectManyRendererBase.getConvertedValue(SelectManyRendererBase.java:108)
> [richfaces-components-ui-4.2.3.Final.jar:4.2.3.Final]
> at javax.faces.component.UIInput.getConvertedValue(UIInput.java:1030)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIInput.validate(UIInput.java:960)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIInput.executeValidate(UIInput.java:1233)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIInput.processValidators(UIInput.java:698)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at
> javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1214)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIForm.processValidators(UIForm.java:253)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at
> org.richfaces.context.PartialViewExecuteVisitCallback.visit(PartialViewExecuteVisitCallback.java:55)
> [richfaces-core-impl-4.2.3.Final.jar:4.2.3.Final]
> at
> org.richfaces.context.BaseExtendedVisitContext.invokeVisitCallback(BaseExtendedVisitContext.java:321)
> [richfaces-core-impl-4.2.3.Final.jar:4.2.3.Final]
> at javax.faces.component.UIComponent.visitTree(UIComponent.java:1612)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIForm.visitTree(UIForm.java:371)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at
> org.richfaces.context.ExtendedPartialViewContextImpl.executeComponents(ExtendedPartialViewContextImpl.java:237)
> [richfaces-core-impl-4.2.3.Final.jar:4.2.3.Final]
> at
> org.richfaces.context.ExtendedPartialViewContextImpl.processPartialExecutePhase(ExtendedPartialViewContextImpl.java:217)
> [richfaces-core-impl-4.2.3.Final.jar:4.2.3.Final]
> at
> org.richfaces.context.ExtendedPartialViewContextImpl.processPartial(ExtendedPartialViewContextImpl.java:196)
> [richfaces-core-impl-4.2.3.Final.jar:4.2.3.Final]
> at
> javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1170)
> [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
> at
> com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
> [jsf-impl-2.1.7-jbossorg-2.jar:]
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
richfaces-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/richfaces-issues