Я использую платформу MobileFirst Foundation 7.0.Ошибка JAXB «Система не может маршалировать объект JAXB в XML-содержимое. Убедитесь, что объект JAXB действителен»
Я создал «тестовый» Java-адаптер, который предоставляет API REST и возвращает аннотированный объект JAXB.
Когда я проверить ИПН с форматом JSON он работает нормально, но когда я изменить тип содержимого приложения/XML я получаю «500 Internal исключения» ошибки и в консоли я вижу следующее исключение:
Система не может маршализовать объект model.UserManager JAXB в XML . Убедитесь, что объект JAXB действителен.
Это мой Пользователь и UserManager POJOs:
@XmlRootElement(name="newuser")
@XmlAccessorType(XmlAccessType.NONE)
public class UserNew {
@XmlElement
String id;
@XmlElement
String name;
@XmlElement
String email;
@XmlElement
String password;
public UserNew(String id, String name, String email, String password) {
super();
this.id = id;
this.name = name;
this.email = email;
this.password = password;
}
// getter ,setter equals and hashCode follows.
Это UserManager:
@XmlRootElement
public class UserManager {
@XmlElement
String managerId;
@XmlElementWrapper(name="users")
ArrayList<UserNew> users;
public UserManager(String managerId, ArrayList<UserNew> users) {
super();
this.managerId = managerId;
this.users = users;
}
// getter ,setter equals and hashCode follows.
Это мой REST метод API адаптера Java:
@GET
@Path("/getUser")
@Produces({MediaType.APPLICATION_JSON,MediaType.APPLICATION_XHTML_XML})
public UserManager getUser(){
UserNew user1 = new UserNew("101","user1","[email protected]","password!");
UserNew user2 = new UserNew("102","user2","[email protected]","password!");
ArrayList<UserNew> userList = new ArrayList<>();
userList.add(user2);
userList.add(user1);
return new UserManager("manager10101",userList);
}