所以我有一个wsdl定义了一个消息部分,如下所示
<wsdl:message name="processEnvelopeResponse">
<wsdl:part name="processEnvelopeReturn" type="xsd:base64Binary"/>
</wsdl:message>
这映射到xsd,然后导入其他xsds,依此类推。
我有以下问题:
忽略这个,我找到了 回答,你可以做到这一点,只要你 将xsd导入wsdl文件。 稍后会更好地解释
答案 0 :(得分:1)
回答我自己的问题,我能够生成工件来从xsd列表中调用webservice,但是在调用webservice时我无法使用它们。
所以我最终不得不手工生成XML,幸运的是我这是一个小小的电话。
String input="XML";
byte[] s = port.processEnvelope(input.getBytes());
由于响应来自xsd:base64Binary,我不得不将传入的字符串映射到xml对象以处理响应。
String xmloutput = new String(s,"UTF-8");
然后我通过jdom输入xmloutput我得到了我的数据。
总而言之,这是实现网络服务的一种愚蠢方式。