使用wsdl响应进行操作

问题描述 投票:0回答:1

假设运行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的内容。

java gwt wsdl
1个回答
0
投票
我可以想到两种不同的方法(它们都不是很舒服)。

GWT客户端代码-(RPC)->服务器代码-wsdl2java-> SOAP Web服务假设您没有使用App Engine,则没有任何限制。这种方法以某种方式复制实体对象。例如,如果您具有UpdateUser SOAP Web服务,则wsdl2java将生成一组类,而对于rpc代码,您将需要另一组类。

© www.soinside.com 2019 - 2024. All rights reserved.