así que estoy tratando de construir un motor de aplicación de Google utilizando servlets, filtros, etc. Tengo un archivo Java que se ve algo como:HashMap en gestor de persistencia
public class Idea implements Comparator<Idea> {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
private User author;
@Persistent
private String content;
@Persistent
private Date date;
@Persistent
private Map<User, Boolean> positiveVotes ;
@Persistent
private Map<User, Boolean> negativeVotes;
public Idea(User author, String content, Date date) {
this.author = author;
this.content = content;
this.date = date;
this.positiveVotes = new HashMap<User, Boolean>();
this.negativeVotes = new HashMap<User, Boolean>();
}
pero cuando trato de ejecutar mi programa, obtener una pila de excepción que comienza con:
Feb 13, 2010 5:01:23 PM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: /sign
java.lang.IllegalArgumentException: positiveVotes: java.util.HashMap is not a supported property type.
at com.google.appengine.api.datastore.DataTypeUtils.checkSupportedSingleValue(DataTypeUtils.java:145)
at com.google.appengine.api.datastore.DataTypeUtils.checkSupportedValue(DataTypeUtils.java:127)
at com.google.appengine.api.datastore.Entity.setProperty(Entity.java:280)
lo tanto, mi pregunta es ¿por qué se quejan de que java.util.HashMap no es un tipo de bien apoyado, y también lo que podría hacer para trabajar alrededor de ella. ¡Gracias! Espero que alguien responda pronto.
Entonces, ¿qué puedo hacer si quiero tener un campo de mapa en mi clase? – urfriend
¿Puedes mostrar más código o explicar el propósito del valor booleano? –
realmente noté que hashmap es realmente serializable http://java.sun.com/j2se/1.4.2/docs/api/java/util/HashMap.html. – urfriend