Problema con @ListProperties

ivan.svi
2012-11-15
2012-11-26
  • ivan.svi

    ivan.svi - 2012-11-15

    Tengo 1 entidad Ventas que se relaciona con Producto y nombre es un atributo de la entidad Producto.

    Entonces el ListProperties en Ventas es asi:
    @ListProperties("producto.numero,producto.nombre ")

    Pero ahora tengo 1 entidad Ventas que se relaciona con Producto y Producto se relaciona con Articulo y nombre es un atributo de la entidad Articulo.

    Como seria ahora ListProperties para que pueda tener a articulo y el nombre?

    muchas gracias

     
  • Hayrol Reyes

    Hayrol Reyes - 2012-11-16

    Hola tatiago,

    Eso depende de las asociaciones que existan entre esas tres entidades, así que suponiendo el siguien modelo de dominio:

    Venta (0..1) <----> (0..*) Producto (0..1) <-----> (0..*) Articulo

    Entonces un @ListProperties() en la entidad Venta para la coleción productos sería:

    @ListProperties("numero, nombre, otros…") // <- propiedades de la entidad Producto
    private Collection<Producto> productos;

    Sin emabargo, como podrás notar, debido a que dentro de la entidad Producto existe una colección de tipo Articulo (articulos)… No es posible referenciar (en este punto y de esta manera) una propiedad de la entidad Articulo (nombre, por ejemplo) como tienes pensado. Debes notar que en el @ListProperties() dentro de la entidad Venta, no podrías poner @ListProperties("numero, nombre, otros…, articulos.nombre") debido a que articulos es una colección.

    La única manera que permitiría referenciar propiedades de la entidad Articulo desde la @ListProperties() dentro de la entidad Venta (pasando por Producto) sería si las asociaciones fueran:

    Venta (0..1) <----> (0..*) Producto (0..1) <-----> (0..1) Articulo

    Lo cual no parece un modelo adecuado… aunque podría ocurrir en dependencia de tu modelo de dominio del negocio. Por lo tanto, si deseas una ayuda mas específica te aconsejo suminstrar mayores detalles sobre este caso.

    Además, deberías poner este caso en el foro de Ayuda (en español).

    Saludos,

     

Log in to post a comment.