Java jackson mixins抛出堆栈溢出错误
您好,我正在为从我公司的公共框架检索到的用户对象编写Rest服务 User userobj=commonframework.getuser(userid)//用户界面是 问题是来自公共框架的用户对象有一个对象,该对象的字符串字段有两个getter,如“isSomeflag()”和“getSomeflag()” 我无法修改commonframework中的代码 我最终使用了**Jackson Mixins**但它抛出了stackoverflow错误。任何帮助都将不胜感激 下面的代码Java jackson mixins抛出堆栈溢出错误,java,json,jackson,jax-rs,Java,Json,Jackson,Jax Rs,您好,我正在为从我公司的公共框架检索到的用户对象编写Rest服务 User userobj=commonframework.getuser(userid)//用户界面是 问题是来自公共框架的用户对象有一个对象,该对象的字符串字段有两个getter,如“isSomeflag()”和“getSomeflag()” 我无法修改commonframework中的代码 我最终使用了**Jackson Mixins**但它抛出了stackoverflow错误。任何帮助都将不胜感激 下面的代码 pub
public abstract class IgnoreMixin {
@JsonIgnore
public abstract String isServiceOnlyflg();
}
服务方式:
@Produces(MediaType.APPLICATION_JSON)
public Response createUserInfo{
mapper = new ObjectMapper();
mapper.getSerializationConfig().addMixInAnnotations(DealerImpl.class,IgnoreMixin.class);
writer = mapper.writer().withDefaultPrettyPrinter();
return writer.writeValueAsString(userobj);
}
方法-2
我尝试创建具有类似属性的本地类,并尝试将这些属性从用户对象映射到本地对象。
初始推断问题类在用户对象中仅被引用一次
但问题是用户包含许多成员对象,这些成员对象又多次引用问题对象,我必须从框架用户结构中创建许多类的本地副本
如果基类中的方法是
isSomeflag()
和getSomeflag()
。你应该使用
@JsonProperty("newProp") abstract int isSomeflag()
@JsonIgnore abstract int getSomeflag();
忽略其中一个,让另一个使用JsonProperty
另外,您可能处于需要使用jsonfilter打破的循环依赖关系中,请检查此项
你能添加stacktrace吗
FilterProvider filterProvider = new SimpleFilterProvider()
.addFilter("filtermixin", SimpleBeanPropertyFilter.serializeAllExcept("circulardependency"));