sha*_*hay 5 java jaxb schemagen
我如何阻止schemagen将超类添加到模式?
我已尝试XMLTransient在超类上使用它的字段,但它们仍然出现在模式中.
例如 :
@XmlTransient
public class Asset {
@XmlTransient
public Long ID;
}
public class Movie extends Asset {
}
Run Code Online (Sandbox Code Playgroud)
创建此架构:
<xs:complexType name="asset">
<xs:sequence>
<xs:element name="ID" type="xs:long" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="movie">
<xs:complexContent>
<xs:extension base="asset">
<xs:sequence/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
the schema that i would like to see is :
<xs:complexType name="movie">
<xs:complexContent>
<xs:sequence/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
你自己已经找到了答案。如果将@XMLTransient注释添加到字段,JAXB Java-to-schema 生成将忽略该注释。XMLTransient 文档对此进行了说明。
如果您schemagen使用的工具没有做到这一点,那么它的实现就有问题。
| 归档时间: |
|
| 查看次数: |
790 次 |
| 最近记录: |