I am trying to make the following class persistent, but get an UnexpectedException. I have omitted the latter portion of the class.
package com.bingehopper.server;
import java.util.Date;
import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;
import com.bingehopper.client.VenueDetails;
import com.google.appengine.api.users.User;
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Venue {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private User user;
@Persistent
private VenueDetails venue;
@Persistent
private Date createDate;
public Venue()
{
this.createDate = new Date();
}
public Venue(User user, VenueDetails venue)
{
this();
this.user = user;
this.venue = venue;
}
}
Here is the error log:
com.google.appengine.tools.development.ApiProxyLocalImpl log
SEVERE: javax.servlet.ServletContext log: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract void com.bingehopper.client.VenueService.addVenue(com.bingehopper.client.VenueDetails) throws com.bingehopper.client.NotLoggedInException' threw an unexpected exception: java.lang.IllegalArgumentException: venue: com.bingehopper.client.VenueDetails is not a supported property type
.
VenueDetails is a class I created in my client package. Can I not use a VenueDetails object variable in my Venue class if I would like it to persist? Or is there a way to make it work? I have no prior experience with GWT and am not sure if I am approaching this the right way. Thank you for your help.