Hay un servicio de WCF con la configuración:Calling servicio WCF por VBScript
<services>
<service name="MyService" behaviorConfiguration="MyServiceBehavior">
<endpoint
binding="basicHttpBinding"
contract="IMyService" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8001/MyService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceBehavior">
<serviceMetadata httpGetEnabled="True" />
</behavior>
</serviceBehaviors>
</behaviors>
se supone Este script llamarlo:
Option Explicit
Dim soapClient
Dim serviceUri
Dim serviceName
Dim portName
Dim result
serviceUri = "http://localhost:8001/MyService"
serviceName = "MyService"
portName = "BasicHttpBinding_IMyService"
Set soapClient = CreateObject("MSSOAP.soapClient")
soapClient.ClientProperty("ServerHTTPRequest") = True
soapClient.mssoapinit serviceUri & "?WSDL", serviceName, portName
Cuando se ejecuta la secuencia de comandos aparece este error:
Cliente: WSDLReader: el análisis del archivo WSDL falló HRESULT = 0x8 0004005 - WSDLReader: la inicialización del servicio falló HRESULT = 0x80004005 - Servicio WSDL: Inicialización de la p ort para el servicio MyService failed HRESULT = 0x80004005 - WSDLPort: Análisis de la información de enlace para el puerto BasicHttpBinding_IMyService failed HRESULT = 0x80004005 - WSDLPort: No se pudo inicializar una operación para el puerto BasicHttpBinding_IMyService HRESULT = 0x8000 4005 - WSDLOperation: La operación // def: portType [@ name = "IMyService"]/ def: operación [@ name = "MiMetodo"] no se encontró en el HRESULT sección porttype = 0x80004005
lo que va mal? Por favor ayuda.
Editar:
Gracias, Cheeso, por la respuesta. El problema con MSSOAP parece ser que requiere que todos los esquemas xsd se incluyan en línea en el archivo WSDL generado. WCF no lo hace de manera predeterminada.
Si desea los XSD en el WSDL, puede modificar el servicio WCF para "aplanarlo". http://www.bing.com/search?q=Wcf+flatten+wsdl Si no tiene control sobre el final de WCF, puede construir un WSDL que sea monolítico y debería funcionar. Pero hay otros problemas más serios con MSSOAP. – Cheeso