5
我具有以下实施为包括在JSON响应父类字段如何使用撑杆2 JSON插件
public abstract class BaseAcion extends ActionSupport {
private String result;
private String message;
//getters, setters
}
public class MyAction extends BaseAction {
private String myFirstField;
private String mySecondField;
public String execute() {
...
myFirstField = "someValue";
mySecondField = "someOtherValue";
...
result = SUCCESS;
message = "Some message here";
...
return result;
}
//methods, getters, setters
}
我已经使用struts2的JSON的插件,动作映射是
<package name="my-package" namespace="/" extends="json-default" >
<action name="myAction" class="MyAction">
<result type="json"></result>
</action>
</package>
的响应,我接收是这样的。
{
"myFirstField":"someValue",
"mySecondField":"someOtherValue"
}
我也希望得到“结果”和“消息”字段作为回应。
如何在JSON响应中包含BaseAction字段?
谢谢。但它会序列化父项的所有属性。我只想在json中的父项的两个属性。我想我必须在每个操作映射中使用“excludeProperties”。有没有更清洁的方法? – 2012-04-10 07:03:42
是的,这是排除他们的方法否则在Action中创建一个内部类,该类仅包含要包含在JSON中的信息并将其设置为要编组的基础/根对象。 – 2012-04-10 07:20:54
而不是在每个动作中创建内部类,我认为最好以我自己的方式扩展JSON结果类型。我将深入探讨json插件。感谢Umesh提供宝贵的解决方案和想法。 – 2012-04-10 09:29:16