Подтвердить что ты не робот

JAXB Документация Аннотации

У меня есть следующий java-класс с аннотацией JAXB @XMLRootElement

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

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

который создает этот фрагмент xml, когда я генерирую схему xsd

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

Можно ли использовать аннотацию JAXB, чтобы детали документации в поле address1 были включены как элемент xs: annotation/xs: document document в моей последней схеме?

<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>
4b9b3361

Ответ 1

Простой ответ: нет, это невозможно с встроенным JAXB.

Ответ 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>