Могу ли я иметь каждый пользовательский объект Java "Person" из массива "Person []" внутри SOAP / XML-элемента "Person" в ответе SOAP?Прямо сейчас у меня есть элемент "item".
У меня есть 3 источника Java-интерфейса веб-службы (WS), реализация WS и класс Person.Я бы сказал, что мне не хватает какой-то аннотации или чего-то подобного ... Все еще не могу понять это.Вот мой код:
Интерфейс WS:
@WebService(
name="GetPersonsForShop",
targetNamespace="http://example.org")
public interface GetPersonsForShop {
@WebMethod( action="",
operationName="GetPersonsForShopService")
@WebResult(name="result")
public my.project.structs.Person[] getPersonsForShopService(@WebParam(name="string") java.lang.String string)
;
}
Реализация WS:
@WebService(serviceName = "GetPersonsForShop", targetNamespace = "http://example.org", endpointInterface = "my.project.webservices.GetPersonsForShop")
public class GetPersonsForShopImpl implements GetPersonsForShop {
//object from business API to get info from DB
GetPersonsForShopBusiness _GetPersonsForShopBusiness = new GetPersonsForShopBusiness();
public my.project.structs.Person[] getPersonsForShopService(java.lang.String shop){
try {
java.util.Collection tempCollection = _GetPersonsForShopBusiness.business(shop);
if (tempCollection == null) {
return null;
}
java.util.Hashtable[] hashtableArray = (java.util.Hashtable[]) tempCollection
.toArray(new java.util.Hashtable[0]);
Person[] result = new Person[hashtableArray.length];
for (int i = 0; i < result.length; i++) {
//business code to populate the array
}
return result
}catch (Exception ex) {
logger.error("Some error msg", ex);
return null;
}
}
}
Класс Person:
public class Person implements java.io.Serializable {
private java.lang.String name;
private java.lang.String idCode;
public java.lang.String getName() {
return this.name;
}
public void setName(java.lang.String name) {
this.name = name;
}
public java.lang.String getIdCode() {
return this.idCode;
}
public void setIdCode(java.lang.String idCode) {
this.idCode = idCode;
}
}
Результат в SOAPОтвет:
<result>
<item>
<name>Scott</name>
<idCode>ABC</idCode>
</item>
<item>
<name>Tiger</name>
<idCode>DEF</idCode>
</item>
</result>
Я ищу:
<result>
<Person >
<name>Scott</name>
<idCode>ABC</idCode>
</Person >
<Person >
<name>Tiger</name>
<idCode>DEF</idCode>
</Person >
</result>