【问题标题】:JAXB-ElipseLink: Preventing marshalling of inherited propertyJAXB-ElipseLink:防止继承财产的编组
【发布时间】:2012-01-18 13:50:43
【问题描述】:

再次,我有一个 EclipseLink 2.3 编组用例,它似乎很简单,但没有按预期工作:

我有一个抽象基类,它定义了一个属性 getX()。我有几个继承此属性的基类派生的子类。

在编组子类时,这个属性也被编组给每个子类。但是,对于一个特定的子类,我想阻止这个属性的编组。

我试过了:

  1. @Override子类中的这个属性并设置它@XmlTransient
  2. 在 oxm.xml 中为子类指定 <xml-transient java-property="X">

两者都无济于事,属性总是编组的 - 这应该如何工作?

【问题讨论】:

    标签: inheritance jaxb eclipselink moxy


    【解决方案1】:

    好的,我就是这样解决的:

    创建抽象基类@XmlTransient,这将导致所有属性/字段都被视为子类的成员。 然后我在我不希望它被编组的子类中标记了 X @XmlTransient

    我想知道是否有替代方案,以防万一无法设置基类瞬态 - 无论出于何种原因。

    想法?

    【讨论】:

      猜你喜欢
      • 2012-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 2023-03-08
      • 2018-07-18
      相关资源
      最近更新 更多