2010-12-13 27 views
7

Tengo un formulario que llena algunos objetos de una Colección. Hice que la colección se implementara con una lista (todo funcionó bien), pero ahora quiero usar un conjunto. Tengo un editor de propiedades registrado para crear los objetos. El problema es que no sé cuál es la sintaxis que debo usar para llenar los objetos del conjunto.Enlazar objetos en una colección de Conjunto

public class MyObject(){ 
    Set<OtherObject> otherObjects = new HashSet(); 
} 

he tratado con la sintaxis de las etiquetas de formulario, como la sintaxis de una lista:

name="otherObjects['${status.index}']" 

y al igual que la sintaxis de un mapa:

name="otherObjects['${id}']" 

pero ambos llegado a un error porque "Propiedad referenciada en la ruta de propiedad indexada 'otherObjects [0]' no es una matriz ni una Lista ni un Mapa"

También he intentado con

name="otherObjects" 

pero esto no llena los objetos. ¿Alguien puede decirme cómo vincular los datos a los objetos en un conjunto.

Gracias

Respuesta

11

De acuerdo con la documentation on data binding, sólo se puede usuario la notación de corchetes para unirse a objetos anidados en una "colección ordenada de forma natural". Un conjunto no califica.

0

no se puede utilizar la sintaxis de edad en las etiquetas de formulario y añadir un captador que devolverá un conjunto de objetos?

public class MyObject(){ 
    List<OtherObject> otherObjectsList = new ArrayList<OtherObjects>(); 

    public Set<OtherObject> getOtherObject() 
    { 
    return new HashSet<OtherObject>(otherObjectsList); 
    } 
} 
+1

Creo que esta solución no es muy limpia, es solo una manera de evitar unirse a un conjunto. – Javi

Cuestiones relacionadas