por motivos de simplicidad:¿Cómo editar un conjunto <? extiende EntityProxy> con el marco GWT Editor?
public class Person
{
String name;
Set<Address> addresses;
}
public class Address
{
String city;
String street;
}
con y combinar
public interface PersonProxy extends EntityProxy
{
public String getName();
public Set<AdressProxy> getAddresses();
}
y
public interface AdressProxy extends EntityProxy
{
public String getCity();
public String getStreet();
}
me dieron clases UiBuinder editar AddressProxy y claro para mí cómo utilizar ListEditor en caso si tengo Lista, pero los datos están establecidos en la clase Persona ¿cómo uso el Marco del Editor para editarlos? ¿O cómo puedo convertir Set en List cuando se convierte en PersonProxy?
Me hicieron un intento de poner una especie de clase Editor adaptador que implementaría
LeafValueEditor<Set<AddressProxy>>
y luego dentro del movimiento LeafValueEditor.setValue() para una lista y empezar una nueva driver.edit() en una jerarquía del Editor separada que se ocupa de la edición de la Lista, pero ahora tiene suerte.
Gracias! Esto es algo para empezar. Francamente, perezoso esperaba un enlace a algún código :-). –
Creo que GWT debe proporcionar algún tipo de estándar 'SetEditor' (probablemente delegando a' ListEditor'). Tuve el mismo problema que OP y terminé exponiendo accesadores 'List'-typeed (convirtiendo propiedad' '' type' real) en la clase de dominio solo para poder usar 'ListEditor'. Pero no siempre es posible hacerlo (a veces solo necesitamos el comportamiento 'Set'-wise en el lado del cliente) –
El problema es que a) un conjunto por definición no tiene un orden específico y los subeditores para los valores son necesariamente una _list_, y b) es probable que desee permitir valores duplicados en el curso de la edición y solo verificar la singularidad en _flush_time, pero de alguna manera debe decirle al usuario cuando ese sea el caso ("hey, tuve 4 valores y cuando lo guardé solo guardé 3 ¡de ellos!"); y la singularidad depende de cómo implemente 'equals()' en los objetos editados. Sin embargo, si puede encontrar un _standard_ 'SetEditor', ¡por favor, contribuya! –