11

我有以下带有 JAXB @XMLRootElement 注释的 java 类

@XmlRootElement(name="ClientData")
public class ClientData {

/**
 * The first address field of the person
 */
private String address1 = null;
}

当我生成 xsd 模式时,它会产生这个 xml 片段

<xs:complexType name="clientData">
  <xs:sequence>
   <xs:element minOccurs="0" name="address1" type="xs:string"/>

是否可以使用 JAXB 注释,以便将 address1 字段上的文档详细信息作为 xs:annotation/xs:documentention 元素包含在我的最终模式中?

<xs:complexType name="clientData">
  <xs:sequence>
   <xs:element minOccurs="0" name="address1" type="xs:string">
    <xs:annotation>
      <xs:documentation>The first address field of the person</xs:documentation>
    </xs:annotation>
   </xs:element>
4

2 回答 2

4

简单的回答:不,使用内置 JAXB 是不可能的。

于 2009-01-23T09:29:30.433 回答
2

我不知道这是否可能,因为我从未使用过它。但据我所知,API 不支持文档元素。但是,您可以使用@XMLElement注释为您的成员提供更具描述性的名称。

//Example: Code fragment
public class USPrice {
   @XmlElement(name="itemprice")
   public java.math.BigDecimal price;
}

<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice"/>
   <xs:sequence>
     <xs:element name="itemprice" type="xs:decimal" minOccurs="0"/>
   </sequence>
</xs:complexType>
于 2009-01-22T17:33:11.783 回答