实际上我遇到了同样的问题,我确实通过为 application/json mime 类型添加 jettison 提供程序来解决它。我不知道 resteasy 1.1 是否包含 jettison 提供程序,但 1.2 版包含。此外,如果您使用的是 jdk 1.6,则必须排除 javax.xml.stream:stax-api jar 文件,否则会出现问题。
这是示例:
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name="account")
public class Account {
private Long id;
private String accountNo;
public Account(){}
public Account(String no) {
accountNo=no;
}
@Id
@XmlElement
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@XmlElement
public String getAccountNo() {
return accountNo;
}
public void setAccountNo(String a) {
accountNo = a;
}
}
和 JAXB 类:
import java.util.ArrayList;
import java.util.List;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
@Path("/account")
public class AccountService {
@GET
@Path("/{accountNo}")
@Produces("application/json")
public Account getAccount(@PathParam("accountNo") String accountNo) {
return new Account(accountNo);
}
}
就是这样,祝你有美好的一天!