1 Reply Latest reply on May 2, 2008 4:05 AM by Daniel Young

    ManagedEntityIdentityInterceptor not handling our LazyList DataModel

    Daniel Young Novice

      Hi guys,


      We have created a List implementation that allows paged data that can be used with rich:datascroller.  It works very well in general, only performing a query each time a new page of data is requested.


      However, I have this intermittent problem when ManagedEntityIdentityInterceptor tries to replace this with an ArrayList  (or so I'm guessing).


      This is what I see...


      java.lang.IllegalArgumentException: Could not set field value by reflection: BatchAdminBean.txnResultList on: BatchAdminBean with value: class java.util.ArrayList
           at org.jboss.seam.util.Reflections.set(Reflections.java:79)
           at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.getFromWrapper(ManagedEntityIdentityInterceptor.java:196)
           at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.entityIdsToRefs(ManagedEntityIdentityInterceptor.java:129)
           at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:46)
      
      ....
      
      Caused by: java.lang.IllegalArgumentException
           at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63)
           at java.lang.reflect.Field.set(Field.java:656)
           at org.jboss.seam.util.Reflections.set(Reflections.java:64)
      
      



      Any ideas?


      Currently the LazyList implementation extends AbstractList and implements List and Serializable.  I tried changing it to extend ArrayList, but still have the same problem.


      thanks in advance,
      Daniel.