Not sure if I'm necessarily understanding the issue but...

Most times we encounter a LazyInitilizationException when trying to iterate 
over relationships outside the scope of the session/transaction; when sent to a 
remote client, for example.

In these cases I like to call on a little utility method to ensure the 
association's objects are stored in a Collection of type I dictate:


  | class PersistenceUtils
  | 
  |         /**
  |      * Returns a Collection of all objects in the specified 
persistentCollection
  |      * without binding to any persistence context or session.
  |      * 
  |      * @param <T>
  |      * @param targetCollection
  |      * @param persistentCollection
  |      * @return
  |      */
  |     public static <T> Collection<T> 
getCollectionItemsRemovedFromPersistenceContext(
  |                     Collection<T> targetCollection, Collection<T> 
persistentCollection) {
  |             // If runtime type of persistentCollection is not 
PersistentCollection,
  |             // take no action
  |             if (!(persistentCollection instanceof PersistentCollection))
  |                     return persistentCollection;
  | 
  |             // Clear existing target
  |             targetCollection.clear();
  | 
  |             // Place all items in persistent collection into target
  |             for (T item : persistentCollection) {
  |                     targetCollection.add(item);
  |             }
  | 
  |             // Return target
  |             return targetCollection;
  |     }

...and I can easily call it by:

Collection<MyType> associations = new ArrayList<MyType>();
  | 
  | associations = PersistenceUtils
  |                             
.getCollectionItemsRemovedFromPersistenceContext(
  |                                             associations,
  |                                             
myAttachedObject.getAttachedAssociations());
  | 


...also, while responding here, found this post with a similar solution:

http://www.mojavelinux.com/blog/archives/2006/06/hibernate_get_out_of_my_pojo/

S,
ALR

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3969262#3969262

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3969262
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to