1
JAX-RS를 배우고 JAXB를 사용하여 잘 작동하는 XML 데이터를 마샬링/비 정렬 화합니다. 내 문제는 일부 XML 요소를 생략해야하는 요청에 대답하는 것입니다. 다음은 예입니다 :JAXB 및 JAX-RS로 요청시 XML 태그를 생략하는 방법은 무엇입니까?
@XmlRootElement(name = "user")
@XmlAccessorType(XmlAccessType.FIELD)
public class User {
@XmlAttribute
private int id;
@XmlElement
private String username;
@XmlElement
private String password;
사용자 클래스는 사용자
의 목록을 포장하는 데 사용됩니다@XmlRootElement(name = "users")
@XmlAccessorType(XmlAccessType.FIELD)
public class Users {
@XmlElement(name = "user")
private List<User> users = null;
public Users() {
}
public List<User> getUsers() {
return users;
}
public void setUsers(final List<User> users) {
this.users = users;
}
}
REST 자원
@GET
@Path("/users")
@Produces(MediaType.APPLICATION_XML)
public Users getAllUsers() {
final ArrayList<User> users = new ArrayList<User>(userDB.values());
final Users userList = new Users();
userList.setUsers(users);
return userList;
}
위 다음 생성 출력
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<users>
<user id="1">
<username>user1</username>
<password>passwd0rd</password>
</user>
<user id="2">
<username>user2</username>
<password>passwd0rd</password>
</user>
</users>
그래서 질문은 ~이야 대한 의견
이<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<users>
<user id="1">
<username>user1</username>
</user>
<user id="2">
<username>user2</username>
</user>
</users>
감사 : JAXB는 예를 들어 (단지이 요청에 대한) 암호 요소를 생략하고이 같은 출력을하도록 지시 할 수있는 방법이 있는지!
@ulab에서 제안한 값을 null로 설정하는 것이 좋습니다! – Lazlo