Ayuda con servicio de WCF

ToroEon

Bovino Milenario
#1
Que tal compas, solicito de su ayuda y experiencia con este tema (WCF). Desarrolle un servicio con WCF y al publicarlo con el VS no hay problema; puedo consumirlo generando un cliente o con el cliente de prueba de VS (WcfTestClient.exe) ó el SOAP UI. Y todo perfecto, incluso lo ven desde otro equipo. Pero el servicio no se queda en mi equipo; sino que hay distribuirlo a las sucursales, y primero lo enviamos a un servidor de desarrollo, lo pongo en el Directorio Virtual que se creo para esto sin problema, cabe mencionar que no podemos manipular el servidor, lo único que podemos hacer es que através del comando exec master..xp_cmdshell 'Iisreset' en SQL reiniciamos el IIS para que tome los ultimos cambios, pero al tratarlo de consumir - ya sea con un cliente ó de alguna otra forma - me envía el siguiente mensaje:

Error: No se pueden obtener metadatos de http://XXX.XXX.XXX.XXX/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?wsdl Si ‚ste es un servicio de Windows (R) Communication Foundation al que tiene acceso, compruebe que ha habilitado la publicaci¢n de metadatos en la direcci¢n especificada. Para obtener ayuda acerca de c¢mo habilitar la publicaci¢n de metadatos, consulte la documentaci¢n de MSDN en http://go.microsoft.com/fwlink/?LinkId=65455.Error de WS-Metadata Exchange URI: http://XXX.XXX.XXX.XXX/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?wsdl Los metadatos contienen una referencia que no se puede resolver: 'http://XXX.XXX.XXX.XXX/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?wsdl'. El tipo de contenido application/soap+xml; charset=utf-8 no era compatible con el servicio http://XXX.XXX.XXX.XXX/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?wsdl. Es posible que los enlaces del cliente y el servicio no coincidan. Error en el servidor remoto: (415) Cannot process the message because the content type 'application/soap+xml; charset=utf-8' was not the expected type 'text/xml; charset=utf-8'..HTTP GET Error URI: http://XXX.XXX.XXX.XXX/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?wsdl Se interpret¢ el documento pero no se pudo procesar. - El documento WSDL contiene v¡nculos que no se pueden resolver. - Error al descargar 'http://XXX.domXXX.mex/Front/Servicios/ValidacionBloqueos/ValidaEmpleado.svc?xsd=xsd0'. - No se puede resolver el nombre remoto: 'XXX.domXXX.mex'


Les comento que ya busque en Google, y lo único que encuentro es que hay que publicar los metadatos, cosa que si tengo configurado en el Web.config:

<serviceBehaviors>
<behavior name="ValidaBloqueos.Service1Behavior">
<!-- Para evitar revelar información de los metadatos, establezca el valor siguiente en false y quite el extremo superior de los metadatos antes de la implementación -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
<!-- Para recibir detalles de las excepciones en los fallos, con el fin de poder realizar la depuración, establezca el valor siguiente en true. Para no revelar información sobre las excepciones, establézcalo en false antes de la implementación -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>

La pregunta es: Me hace falta configurar algo más?

Espero me puedan ayudar!

NOTA: Oculte las IP´s, dominios y algunos datos más por politícas de la empresa!
 

jmvd70

Bovino adicto
#3
Saludos compañero

No parece tan sencillo tu error.

Uno de los problemas que veo que tienes es que no puedes manipular el IIS, ya que debes habilitar la compatibilidad con este tipo de servicios en el servidor específicamente en el IIS ya que no se instala en automático. Tiene una opción que permite ejecutar servicios WCF y debe estar habilitada.

Si ya lo instalaste, configuraste y funciona en un equipo, copia y pega esa carpeta en los demás servidores, únicamente configurando los datos que son relevantes. Si no funciona, puede ser un error de configuración del IIS.

Suerte.
 

ToroEon

Bovino Milenario
#4
Gracias por la respuesta.aunq no creo q sea mala confi del IIS ya q ya hay otros servicios montados.

Alguna otra opción???
 

jmvd70

Bovino adicto
#5
Saludos

No dices que tipo de servicios están publicados, porque hay web services clásicos y los servicios de WCF, no se publican ni se configuran de la misma manera.

Otra opción son permisos en los archivos y en las carpetas para los usuarios dueños de los servicios, en este caso los usuarios de IUSR y otro, que depende de la versión de IIS que tengas.

Por si las dudas, debes poner permiso de control completo sobre todas las carpetas y archivos para todos los usuarios, si es que no quieres estar batallando.

Suerte.
 
Arriba