Unmarshal одного списка элементов не удается

Я запускаю образец (который я могунайти больше) изБлог Блеза Дафанса на Glassfish 3 с использованием EclipseLink 2.5 MOXy для сервиса JAXB.

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Company {

    @XmlElementWrapper(name="employees")
    @XmlElement(name = "employee", type=Employee.class)
    private List employees;
}

@XmlAccessorType(XmlAccessType.FIELD)
public class Employee {
    private String id;
    private String name;
}

Я добавил несколько аннотаций к классам для создания желаемой структуры json:

{
  "employees": [
    {
      "id": "1",
      "name": "Jane Doe",
      "report": []
    }
  ]
}

Когда я пытаюсь разархивировать этот JSON, он, к сожалению, терпит неудачу, возвращая объект с пустым списком сотрудников.

Добавление другого элемента в список JSON ИЛИ удаление@XmlElementWrapper работает.

Но я хочу, чтобы ключевой элемент был названemployees, так что я должен использовать аннотацию оболочки, или нет?

Редактировать:

public class MyApplication extends Application {

    @Override
    public Set getClasses() {
        HashSet set = new HashSet(2);
        set.add(MOXyJsonProvider.class);
        set.add(Index.class);
        return set;
    }

    @Override
    public Set getSingletons() {
        MOXyJsonProvider moxyJsonProvider = new MOXyJsonProvider();

        moxyJsonProvider.setAttributePrefix("@");
        moxyJsonProvider.setFormattedOutput(true);
        moxyJsonProvider.setIncludeRoot(false);
        moxyJsonProvider.setMarshalEmptyCollections(true);
        moxyJsonProvider.setValueWrapper("$");
        moxyJsonProvider.setWrapperAsArrayName(true);

        HashSet set = new HashSet(1);
        set.add(moxyJsonProvider);
        return set;
    }

}

Ответы на вопрос(1)

Ваш ответ на вопрос