JAXB Не может разобрать свойства сложного типа

Я работаю с сервисом поиска eBay, и все отлично работает, кроме парсинга unitPrice. Здесь сказано:

eBay использует UnitType и UnitQuantity

Так что в моем UnitPriceInfo.java у меня есть это:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "UnitPriceInfo", propOrder = { "type", "quantity", "any" })
public class UnitPriceInfo
{
    @XmlElement(name = "UnitType")
    protected String type;
    @XmlElement(name = "UnitQuantity")
    protected Double quantity;
    @XmlAnyElement(lax = true)
    protected List<Object> any;

Но до сих пор, UnitPriceInfo объекты создаются, но у них всегда есть поля типа и количества, равные нулю.

Нужно ли менять тип с String и Double на UnitType а также UnitQuantity? Если нет, то в чем проблема?

2 ответа

Решение

Элементы названы type а также quantity, как это:

  <unitPrice>
    <quantity> double </quantity>
    <type> string </type>
  </unitPrice>

Вы должны изменить свои аннотации на @XmlElement(name="type") а также @XmlElement(name="quantity"),

Вы можете изменить имя класса с UnitPriceInfo на "unitPrice" ИЛИ дать аннотированное имя "unitPrice" для имени класса.

Другие вопросы по тегам