XML 形式で従業員の java.util.list を返す JAX-RS サービス (ジャージ実装) にアクセスしようとしています。
Service メソッドのシグネチャは次のようになります。
@GET
@Path("/getEmployeeListXML")
@Consumes(MediaType.TEXT_PLAIN)
@Produces(MediaType.APPLICATION_XML)
public List<EmployeeXML> getEmployeeListXML(@QueryParam("id") String id){
//Some code which returns a List<EmployeeXML>
}
返される XML の形式は次のようになります。
<employeeXMLs>
<employeeXML>
<empId>1</empId>
<empName>John</empName>
<empAge>35</empAge>
<empSex>Male</empSex>
</employeeXML>
<employeeXML>
<empId>2</empId>
<empName>Lisa</empName>
<empAge>23</empAge>
<empSex>Female</empSex>
</employeeXML>
</employeeXMLs>
ジャージ クライアントからこれにアクセスするために、次のコードを使用しています。
List<EmployeeXML> empListXML = (List<EmployeeXML>)service.path("rest").path("GetService").path("getEmployeeListXML").accept(MediaType.APPLICATION_XML).get(EmployeeXML.class);
戻り値の型はリストである必要があるため、これは正しくありませんが、get メソッドでは現在、単一のオブジェクトを取得しようとしています。ここでクライアントからリストを取得する方法がわかりません:(
この例外が発生しています:
unexpected element (uri:"", local:"employeeXMLs"). Expected elements are <{}employeeListXML>,<{}employeeXML>
この仕事をするために私を助けてください。
ありがとう、