【问题标题】:JAXB XmlAnyElement set namespace attributeJAXB XmlAnyElement 设置命名空间属性
【发布时间】:2012-05-29 09:35:53
【问题描述】:

我有一个使用 JAXB 注释的简单 Java 类:

class Foo {
   @XmlAnyElement(lax=true)
   List<Object> any;
}

这会产生以下架构:

<xs:complexType name="foo">
  <xs:sequence>
    <xs:any processContents="lax" maxOccurs="unbounded"/>
  </xs:sequence>
</xs:complexType>

有没有办法为&lt;any&gt;元素设置命名空间属性,使其生成如下:

<xs:any namespace="##targetNamespace" processContents="lax" maxOccurs="unbounded"/>

【问题讨论】:

  • 运气好能在这个上找到遮阳篷吗?

标签: java xml jaxb xsd maven-jaxb2-plugin


【解决方案1】:

在你的 foo 类包中插入一个 package-info.java 文件,内容如下:

@javax.xml.bind.annotation.XmlSchema(namespace = "urn:foo:v1", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package java.ns.foo;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-06
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 2014-02-01
    • 2012-08-01
    • 1970-01-01
    相关资源
    最近更新 更多