I tried using em.clear(). I did this after loading and accessing my object. I also changed my fetch type to EAGER. Sadly it still fails ; (
-Dave On Nov 9, 6:59 am, dparish <dpar...@gmail.com> wrote: > Thanks David. > > I tried LAZY and EAGER. Both caused the problem. > > For #2, that seems promising. There's an EntityManager clear method, > but that would affect all threads using the entity manager. Any > thoughts on how to do that detach? > > On Nov 8, 8:20 pm, David Chandler <drfibona...@google.com> wrote: > > > > > > > > > Hi dparish, > > > There are three issues here: > > > 1. GWT needs a fully populated object graph to send back to the > > client. Lazy fetching will not work across the client / server > > boundary, so you must ensure that your code fetches all relations > > eagerly (via an annotation or a separate call if needed). > > > 2. JDO and JPA implementations use proxy classes for objects attached > > to a persistence manager. Before they can be sent back to the client, > > you must detach all objects from the PM. > > > 3. Even then, GWT won't be able to serialize any types for which it > > doesn't know the source (like App Engine's Key class). The open source > > Gilead project and others like Objectify provide GWT wrappers for > > these. > > > HTH, > > /dmc > > > On Mon, Nov 8, 2010 at 8:17 PM, dparish <dpar...@gmail.com> wrote: > > > I have an entity with a member like this: > > > > @Entity > > > public class Foo implements Serializable{ > > > > �...@onetomany(mappedBy="foo",targetEntity=InternalText.class, > > > fetch=FetchType.EAGER) // I tried Lazy too. > > > > private ArrayList<InternalText>internalTextEntries; > > > > When I try to use Foo I get this error: > > > > Throwable occurred: > > > com.google.gwt.user.client.rpc.SerializationException: Type > > > 'org.apache.openjpa.util.java$util$ArrayList$proxy' was not included > > > in the set of types which can be serialized by this > > > SerializationPolicy or its Class object could not be loaded. For > > > security purposes, this type will not be serialized.: instance = > > > [blah.blah.entities.internalt...@36ae36ae, > > > blah.bhla.entities.internalt...@3fca3fca, > > > blah.blah.retain.entities.internalt...@42474247, > > > blah.blah.entities.internalt...@48724872] > > > at > > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.seriali > > > ze(ServerSerializationStreamWriter.java: > > > 610) > > > at > > > com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamWriter.write > > > Object(AbstractSerializationStreamWriter.java: > > > 129) > > > at > > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter > > > $ValueWriter$8.write(ServerSerializationStreamWriter.java:152) > > > at > > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.seriali > > > zeValue(ServerSerializationStreamWriter.java: > > > 534) > > > at > > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.seriali > > > zeClass(ServerSerializationStreamWriter.java: > > > 700) > > > > From what I can tell openjpa is creating a helper representation of > > > ArrayList that it uses to assist in monitoring and lazy loading the > > > child table. I've tried eager and lazy fetching. > > > > I tried this: > > > > ArrayList<InternalText> newText = new ArrayList<InternalText>(); > > > for (InternalText textItem: foo.getInternalTextEntries()) { > > > newText.add(textItem); > > > } > > > foo.setInternalTextEntries(newText); > > > > It got past my error, but then the next layer down had trouble (Date > > > in the InternalText class) > > > > Type 'org.apache.openjpa.util.java$util$Date$proxy' was not included > > > in the set of types which can be serialized by this > > > SerializationPolicy > > > > -- > > > You received this message because you are subscribed to the Google Groups > > > "Google Web Toolkit" group. > > > To post to this group, send email to google-web-tool...@googlegroups.com. > > > To unsubscribe from this group, send email to > > > google-web-toolkit+unsubscr...@googlegroups.com. > > > For more options, visit this group > > > athttp://groups.google.com/group/google-web-toolkit?hl=en. > > > -- > > David Chandler > > Developer Programs Engineer, Google Web > > Toolkithttp://googlewebtoolkit.blogspot.com/ -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.