J’ai une classe d’action dans laquelle de nombreuses méthodes d’action sont définies et des méthodes appropriées pour les accesseurs et les traceurs sont également définies. J’ai quelques méthodes d’action dont je tire les données en json en les appelant de jQuery. mais lorsque j’obtiens les données JSON, elles incluent tous les champs pour lesquels les getters et les setters sont définis, mais je ne souhaite obtenir que le champ rempli par la méthode à laquelle j’appelle. par exemple-
public class ApplicantRegistration extends ActionSupport{ private Ssortingng s1; private XyzBean bean; private Ssortingng s2; // respective getters and setters.... public Ssortingng m1(){ // some work return SUCCESS; } public Ssortingng m2(){ //some work s2="abc"; return SUCCESS; } }
quand j’appelle la méthode m2 via jQuery et obtenir une réponse json il donne
{ s1: null, bean: null, s2:"abc", m2: "success", }
mais je veux seulement
{ s2:"abc" }
Par défaut, json
result sérialise toutes les propriétés de bean spécifiées par le paramètre root
qui est défini par défaut sur l’action. Mais vous pouvez utiliser le paramètre includeProperties
du résultat pour filtrer uniquement les propriétés de la root
qui correspondent aux expressions regex.
@Result(type="json", params = {"includeProperties", "^s2"})