2010-04-26 5 views
0

Ma classe ressemble à ceci:Erreur Google App Engine JDO causée par GregorianCalendar?

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; 

@PersistenceCapable(identityType=IdentityType.APPLICATION) 
public class Contact_Info implements Serializable 
{ 
    @PrimaryKey 
    @Persistent(valueStrategy=IdGeneratorStrategy.IDENTITY) 
    Long Id; 
    public static final long serialVersionUID=26362862L; 
    @Persistent 
    String Contact_Id=""; 
    @Persistent 
    GregorianCalendar Date_1; 

    public Contact_Info() { } 

    public void setId(Long value) { Id=value; } 
    public Long getId() { return Id; } 

    public void setContact_Id(String value) { Contact_Id=value; } 
    public String getContact_Id() { return Contact_Id; } 

    public void setDate_1(GregorianCalendar value) { Date_1=value; } 
    public GregorianCalendar getDate_1() { return Date_1; } 

    public String toString() { return Contact_Id; } 
} 

Quand il est lancé, je suis l'erreur suivante:

java.lang.UnsupportedOperationException org.datanucleus.store.appengine.EntityUtils.getPropertyName (EntityUtils.java : 62) org.datanucleus.store.appengine.DatastoreFieldManager.storeObjectField (DatastoreFieldManager.java:839) org.datanucleus.state.AbstractStateManager.providedObjectField (AbstractStateManager.java:1037) PayPal_Monitor.Contact_Info.jdoProvideField (Contact_Info.java) PayPal_Monitor.Contact_Info.jdoProvideFields (Contact_Info.java) org.datanucleus.state.JDOStateManagerImpl.provideFields (JDOStateManagerImpl.java:2715) org.datanucleus.store.appengine.DatastorePersistenceHandler.insertPreProcess (DatastorePersistenceHandler.java:341) organigrammes . datanucleus.store.appengine.DatastorePersistenceHandler.insertObjects (DatastorePersistenceHandler.java:251)

Si je supprime le "GregorianCalendar Date_1", cela fonctionne correctement, que dois-je faire pour le réparer? J'ai besoin de la date dedans.

Frank

Répondre

0

Il y a un open issue pour cela, mais ce que je ne comprends pas vraiment est qu'il était censé être fixed il y a un an. J'ai bousculé le bug, je vais éditer ma réponse si quelque chose arrive.