在尝试使用PHP和Java为WCF服务生成代理时,我得到以下输出错误:
在Java中,我使用wsimport和Jaxws,在PHP中使用JaxB,我使用wsdl2php
我得到的错误如下:
重复"message“实体时出错:http://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx/Service.svc?wsdl的"IWcfRequestProcessor_ProcessRequests_InputMessage第1行
wsdl中唯一的消息实体是:
<wsdl:message name="IWcfRequestProcessor_ProcessRequests_InputMessage">
<wsdl:part name="parameters" element="tns:ProcessRequests"/>
</wsdl:message>
<wsdl:message name="IWcfRequestProcessor_ProcessRequests_OutputMessage">
<wsdl:part name="parameters" element="tns:ProcessRequestsResponse"/>
</wsdl:message>
<wsdl:message name="IWcfRequestProcessor_ProcessOneWayRequests_InputMessage">
<wsdl:part name="parameters" element="tns:ProcessOneWayRequests"/>
</wsdl:message>因此,正如您所看到的,没有重复,所以我无法理解为什么会引发此错误。
如有任何帮助,我们将非常感谢:
安德鲁
发布于 2010-07-12 05:44:06
问题是由FQDN (完全限定域名)引起的。我没有使用默认svc页面上显示的那个。例如,我尝试了127.0.0.1/MyService.svc,而它实际上解析为D4testtest.mynetwork.com/MyService.svc。
因为两个地址都是有效的,所以两个地址似乎都被考虑在内了,所以在第二次传递时,它已经解析了wsdl,从而生成了这个错误,这是有效的。
干杯,
安德鲁
发布于 2013-09-28 19:37:50
我有一个import语句,它加载具有相同消息名称的文件。删除导入解决了我的问题。
https://stackoverflow.com/questions/3164880
复制相似问题