It seems rather simple enough but i still cannot get it working
correctly. I set the annotations in my classes and modified the PM
factory
[Account]
@Persistent(mappedBy = "account", defaultFetchGroup="true")
private List<Key> projects;
[Project]
@Persistent(defaultFetchGroup="true")
private Key account;
[Factory] (based off starter GAE project documentation)
public static PersistenceManagerFactory get() {
FetchPlan fp =
pmfInstance.getPersistenceManager().getFetchPlan();
fp.setGroup(FetchPlan.DEFAULT);
return pmfInstance;
}
I'm still seeing the same null pointer exception.
On Nov 13, 3:28 pm, "Max Ross (Google)" <[email protected]>
wrote:
> That sounds like a good topic for a Snippets That Work blog post. I don't
> have time to construct the example for you but I'd recommend reading
>
> http://www.datanucleus.org/products/accessplatform_1_1/jdo/fetchgroup...
>
> If after reading this you're still not able to get your code working, please
> post your model objects and your code and I can take a look.
>
> Max
>
>
>
> On Fri, Nov 13, 2009 at 11:49 AM, IlyaE <[email protected]> wrote:
> > Max,
>
> > Can you please provide an example of how to set the Account in a fetch
> > group? What about detaching the entire Project object and then saving
> > it in the session?
>
> > On Nov 13, 1:50 pm, "Max Ross (Google)"
> > <[email protected]<maxr%[email protected]>
>
> > wrote:
> > > Presumably you have a Project in your HttpSession with a null Account.
> > This
> > > is most likely related to FetchGroups. You probably want to put your
> > > Project.account field in the default fetch group. That way it will
> > always
> > > be available when you close the persistence manager you used to load the
> > > Project.
>
> > > On Thu, Nov 12, 2009 at 7:29 PM, IlyaE <[email protected]> wrote:
> > > > I'm seeing an odd issue when loading my jsps for the first time (after
> > > > deployment).
>
> > > > I have an Account object that has many Projects
> > > > [Account]
> > > > �...@persistent(mappedBy = "account")
> > > > private List<Key> projects;
>
> > > > and on the otherside
> > > > [Project]
> > > > �...@persistent
> > > > private Key account;
>
> > > > Now when i first load my jsp that is forwarded from a servlet, i get a
> > > > NPE on the "Long id = p.getAccount().getId();" in this code
>
> > > > Project p = (Project)
> > request.getSession().getAttribute("project");
> > > > Account account = null;
> > > > if (p != null) {
> > > > Long id = p.getAccount().getId();
> > > > account = pm.getObjectById(Account.class, id);
>
> > > > I know p is not null (since this code runs) and i know that it is
> > > > associated with an account.
>
> > > > The really odd thing is... If i refresh the page, everything works as
> > > > expected. So this NPE only occurs after i deploy a new version of the
> > > > app, or certain files expire.
> > > > Do i need to initialize anything?
>
> > > > Thanks!
>
> > > > --
>
> > > > You received this message because you are subscribed to the Google
> > Groups
> > > > "Google App Engine for Java" group.
> > > > To post to this group, send email to
> > > > [email protected].
> > > > To unsubscribe from this group, send email to
> > > > [email protected]<google-appengine-java%2B
> > > > [email protected]><google-appengine-java%2B
> > [email protected]>
> > > > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/google-appengine-java?hl=.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "Google App Engine for Java" group.
> > To post to this group, send email to
> > [email protected].
> > To unsubscribe from this group, send email to
> > [email protected]<google-appengine-java%2B
> > [email protected]>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/google-appengine-java?hl=.
--
You received this message because you are subscribed to the Google Groups
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=.