假设运行wsdl2java后我们得到响应
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "response", propOrder = {
"responseDate",
"institutionList"
})
@XmlRootElement(name="response")
public class Response implements Serializable {
@XmlElement(required = true)
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar responseDate;
@XmlElement(required = true)
protected List<InstitutionList> institutionList;
public XMLGregorianCalendar getResponseDate() {
return responseDate;
}
public void setResponseDate(XMLGregorianCalendar value) {
this.responseDate = value;
}
public List<InstitutionList> getInstitutionList() {
if (institutionList == null) {
institutionList = new ArrayList<InstitutionList>();
}
return this.institutionList;
}
}
InstitutionList
具有很深的结构。由于某些导入,我无法序列化我的Response
(GWT需要它),因此我必须手动创建一些HashMap
(可以序列化)并填充深层结构中的所有字段。有什么办法不这样做吗?另外,如果我想将Response
中的数据保存到数据库中,我还必须使用所有值制作类似于hashmap的内容。
GWT客户端代码-(RPC)->服务器代码-wsdl2java-> SOAP Web服务假设您没有使用App Engine,则没有任何限制。这种方法以某种方式复制实体对象。例如,如果您具有UpdateUser SOAP Web服务,则wsdl2java将生成一组类,而对于rpc代码,您将需要另一组类。