小编典典

编组时如何防止JAXB绑定@XmlRootElement的超类方法?

java

我有一个标注为A类@XmlRootElement@XmlAccessorType(XmlAccessType.NONE)。我遇到的问题是,当我不希望绑定超类的方法并且无法更新该类时,就将其绑定。我希望可以在根元素类上添加一个注释,以防止发生这种情况。

例:

@XmlRootElement
@XmlAccessorType(XmlAccessType.NONE)
public class Person extends NamedObject {

    @XmlElement
    public String getId() { ... }

}

我希望,只有注释的方法@XmlElementPerson会被束缚和整理,但超类的方法都是约束,也是如此。这样,生成的XML就会包含太多信息。

如何避免不必注释超类本身而绑定超类的方法?


阅读 234

收藏
2020-11-13

共1个答案

小编典典

根据此StackOverflow帖子:
我如何忽略超类?

JAX-B不能在不修改超类的情况下忽略超类。引用该帖子的相关部分:

Update2:我在java.net上发现
一个类似问题的线程。该线程导致了一个增强请求,该请求被标记为另一个问题的重复
,从而导致了@XmlTransient注释。对这些错误报告的评论使我相信在当前规范中这是不可能的。

2020-11-13