我有一個通用的ServiceResponse類,如下所示:如何使用RESTEasy中的通用模板類(<T>)生成XML響應?
@XMLRootElement
public class ServiceResponse<T>
{
private T data;
private String error;
//setters n getters
}
從我的RESTEasy服務,我想生成XML響應爲:
List<Customer> customers = someDAO.getCustomers();
ServiceResponse<List<Customer>> resp = new ServiceResponse<List<Customer>>();
resp.setData(customers);
resp.setError("No Error");
return resp;
or return Response.ok().entity(resp).build();
但這是拋出錯誤,因爲是對Java沒有JaxbMarshallWriter .util.List。
我可以列表列舉usinig GenericEntity類。
GenericEntity<List<Customer>> entity = new GenericEntity<List<Customer>>(customers){};
Response.ok(entity).build();
但GenericEntity<ServiceResponse<List<Customer>>>
工作不說不JaxbMarshallWriter爲java.util.List的。
是否有任何解決通用模板(,)的marshall/unmarshall類?
也許這有幫助嗎? http://stackoverflow.com/questions/5391486/make-a-collection-generic-in-javax-xml-bind – Friso