Transfiere solo una parte de las propiedades de una clase en struts ''json
struts2 actioncontroller (3)
Pruebe algo como:
<!-- Result fragment -->
<result type="json">
<param name="root">merchandise</param>
<param name="excludeProperties">price,description</param>
</result>
Consulte la documentación completa, otras opciones y ejemplos en http://struts.apache.org/2.2.3/docs/json-plugin.html
Lo siento, realmente no sé cómo resumir el título de esta pregunta. Entonces, el título puede no ser claro.
Tengo una clase de acción que realiza cierta lógica comercial.
en la clase de acción:
class ActionClass extends ActionSupport{
private Merchandise merchandise;// I want to transfer it to the client
//setter and getter
}
en la clase de Mercancía:
class Merchandise{
private String name; // I want to transfer it
private String price; //I don''t want to transfer it
private String description;//I don''t want to transfer it
//setter and getter
}
Ahora, necesito transferir la propiedad de mercancía en ActionClass al cliente.
Sin embargo, en la propiedad de la mercancía , quiero transferir solo la propiedad de nombre mientras se inhiben las otras dos propiedades.
Entonces, ¿cómo inhibir la transferencia de las otras dos propiedades (precio y descripción) en la clase Mercancía?
La manera más fácil es crear un Objeto de Transferencia de Datos en su clase de acción que contenga solo los campos que desea enviar al cliente y hacer que su objeto raíz
La respuesta de @nmc es correcta de otra manera en que puedes intentarlo de la siguiente manera:
<result type="json">
<param name="root">merchandise</param>
<param name="includeProperties">name</param>
</result>
O
<result type="json">
<param name="includeProperties">
merchandise.name
</param>
<param name="root">
#action
</param>
</result>