我正在使用 JAXB 从 XML 模式生成 bean 模型。模式中的构造之一是某个标签可以存在或不存在。例如下面代码片段中的 ping:
<buildtime-behavior>
<ping/>
</buildtime-behavior>
在 XSD 中,我将其映射为:
<xs:element name="buildtime-behavior">
<xs:complexType>
<xs:sequence>
<xs:element name="ping" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
在由 JAXB 生成的 BuildtimeBehavior 类中,这会导致:
public void setPing(Object value)
现在我想设置或清除该标签。但是,我不能简单地执行“new Object()”,因为这将导致“java.lang.Object 无法转换为 org.w3c.dom.Element”。但我没有创建元素的文档。由 JAXB 生成的 ObjectFactory 没有 createPing() 方法...
如何设置 ping?