我使用 JAXB 从 Java 类生成 XML 模式 (XSD)。我想知道如何使用注释指定静态属性的值。
例如我这样定义一个属性
@XmlAttribute(name="tooltip")
private static final String TOOLTIP = "A string";
我想进入我的 XSD
<attribute name="tooltip" type="string" fixed="A string">
那么,如何使用 JAXB 在 XSD 中强制生成静态属性?
谢谢!
最佳答案
从 JAXB 2.2 开始,没有标准 JAXB (JSR-222)可以添加到您的模型以导致 fixed
属性出现在生成的 XML 架构中的元数据。模式生成过于宽容而不是过于严格。这意味着您不能执行以下操作:
- 为属性标记一个固定值
- 标记 maxOccurs 不是 1 或 unbounded
- 等等
关于java - Jaxb:带注释的类中的属性固定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18828327/