У меня есть класс Customer и CustomerFullAddress, и я использую JAXB, чтобы попытаться создать файл XML
<Customer CustomerID="GREAL">
<CompanyName>Great Lakes Food Market</CompanyName>
<ContactName>Howard Snyder</ContactName>
<ContactTitle>Marketing Manager</ContactTitle>
<Phone>(503) 555-7555</Phone>
<FullAddress>
<Address>2732 Baker Blvd.</Address>
<City>Eugene</City>
<Region>OR</Region>
<PostalCode>97403</PostalCode>
<Country>USA</Country>
</FullAddress>
</Customer>
Класс Customer выглядит следующим образом (Это неполная реализация)
package org.abc.customers;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@XmlRootElement(name = "customer")
@XmlType (propOrder = { "companyName", "contactName", "contactTitle", "phone" })
public class Customer {
*@XmlElement(name = "customerfulladdress")
private CustomerFullAddress custAdd;*
private String companyName;
private String contactName;
private String contactTitle;
private int phone;
public CustomerFullAddress getCustAddress() {
return custAdd;
}
public void setCustAddress(CustomerFullAddress custAdd) {
this.custAdd = custAdd;
}
...
Хотя CustomerFullAddress
package org.abc.customers;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@XmlRootElement(name = "customerfulladdress")
//If you want you can define the order in which the fields are written
//Optional
@XmlType(propOrder = { "address", "city", "region", "postalCode", "country" })
public class CustomerFullAddress {
private String address;
...
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
.....
}
] и ошибка
Exception in thread "main" com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException:2 количество IllegalAnnotationExceptions Свойство custAdd присутствует, но не указан в @XmlType.propOrder, эта проблема связана с следующее местоположение:в частном org.abc.customers.CustomerFullAddress org.abc.customers.Customer.custДобавить в org.abc.customers.Customer Свойство custAddress присутствует, но не указанный в @XmlType.propOrder, эта проблема связана с следующее местоположение:на публике org.abc.customers.CustomerFullAddress org.abc.customers.Customer.getCustAddress()по адресу org.abc.customers.Customer
Спасибо за внимание!