无法从wsdl导入localhost URL

时间:2012-08-22 21:25:43

标签: ios wcf soap soapui wsdl2objc

我正在尝试使用iPhone上的肥皂来使用WCF Web服务(我自己没有写过)。在同一个Web服务器上运行工具时,我可以使用SoapUI和.Net WebService Studio测试服务。但是当我从另一台机器上尝试时,这两个工具在尝试从localhost导入时失败了:

<wsdl:import namespace="http://MyDomain.IGeneralInterface" location="http://localhost:8000/?wsdl=wsdl0"/>

wsdl0:

<xsd:schema targetNamespace="http://MyDomain.IGeneralInterface/Imports">
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd0" namespace="http://MyDomain.IGeneralInterface"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/MyDomain.IGeneralInterface"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd4" namespace="http://schemas.microsoft.com/Message"/>
</xsd:schema>

我希望能够使用wsdl2objc,但它也无法识别导入。

任何人都可以告诉我为什么这是一个问题以及如何处理它?<​​/ p>

1 个答案:

答案 0 :(得分:0)

他们失败的原因是你的wsdl不平坦。为了使您的WCF服务可以互操作,您可以考虑展平您的wsdl。请点击以下链接:

<强> How to flatten your wsdl

注意:如果您是.NET 4.5,那么您可以将其作为内置功能。即,当您开发服务时,您会看到一个生成平面wsdl的URL。