Struts2 Only Use specific Variable Object for JSON Result(不是所有的Action变量)

基因 B.

假设我的 Struts 映射返回一个 JSON 字符串,

    <action name="retrieveJson" method="retrieveJson" class="myapp.WebServiceAction">
        <result type="json">
            <param name="contentType">text/plain</param>
        </result>       
    </action>

我的 Action 类有多个可以“解释”为潜在结果的变量。

public class WebServiceAction {
   private List<PublicationRecord> publicationRecords; // getters+setters
   private List<ReviewRecord> reviewRecords; // getters+setters
   private List<CustomRecord> customRecords; // getters+setters
}

当我执行以下操作时,我设置了我想要的特定变量,但 Struts2 似乎返回了 Action 下适合的所有变量:

public String retrieveJson() {
   publicationRecords = service.getPublicationRecords();
   return SUCCESS;
}

返回SUCCESS是错误的吗?我只想要我在这个方法中设置的 JSON-ified 变量。现在,它正在返回所有 3 个变量,

{
  "publicationRecords" : ..,
  "reviewRecords" : null,
  "customRecords" : null
}

预期的:

{"publicationRecords" : .. }
皮耶罗

为此,您可以使用 2 个属性。excludeNullPropertiesincludeProperties仅序列化所需的字段。includeProperties如果您不想序列化完整的对象内容,允许使用正则表达式。

<result type="json">
  <param name="includeProperties">
    ^entries\[\d+\].clientNumber,
    ^entries\[\d+\].scheduleNumber,
    ^entries\[\d+\].createUserId
  </param>
</result>

这里是官方文档。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JSON对象未在Struts2操作中设置变量

来自分类Dev

JSON对象未在Struts2操作中设置变量

来自分类Dev

使用JSON将2个参数传递给action struts2

来自分类Dev

如何在struts2中仅返回数组而不是json对象

来自分类Dev

Struts2在带有“ quote”的jsp文件上显示json数据

来自分类Dev

简单的ajax返回json,struts2和Restful中有异常

来自分类Dev

完整日历Struts2 JSON

来自分类Dev

Struts2 Action类的验证方法

来自分类Dev

Struts2 redirectAction不是https吗?

来自分类Dev

Struts2传递变量的情况

来自分类Dev

IF语句后Struts2变量消失

来自分类Dev

JSON + AJAX + STRUTS2 + HTML中的RENDER JSON

来自分类Dev

从Struts2的JSON处理中排除属性

来自分类Dev

在Struts2中使用JSON-RPC

来自分类Dev

无法发送回struts2 json插件的数组

来自分类Dev

jQuery Fullcalendar Struts2事件作为Json

来自分类Dev

Struts2 json返回多余的\反斜杠

来自分类Dev

属性setData的不兼容类型[JSON + Struts2插件]

来自分类Dev

从ajax请求在Struts2 Action获取空值

来自分类Dev

Jsp Struts2中Action类的调用函数

来自分类Dev

Struts2从applicationContext忽略Action类的值属性

来自分类Dev

struts2 tokensession 未在 Action excludeMethod 中设置请求

来自分类Dev

将 bean 从 action 映射到 struts2 中的表单

来自分类Dev

struts2:result null找不到异常

来自分类Dev

将变量从操作类(struts2)传递到JSP

来自分类Dev

将变量从操作类(struts2)传递到JSP

来自分类Dev

Struts2提交列表中具有ID的按钮

来自分类Dev

URL Struts2中有多个参数

来自分类Dev

带有scriptPath的Struts2 sj:head