Ir al contenido


Foto

WebService funciona en IIS 7, pero no en IIS 6


  • Por favor identifícate para responder
29 respuestas en este tema

#1 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 15 junio 2012 - 12:52

Hola amigos.

He creado un WebService, compilado como aplicación CGI, que me funciona correctamente en mi Windows 2008 Server con IIS 7, pero en cambio el mismo binario parece no funcionar en el servidor de producción final, con Windows 2003 Server con IIS 6.

He escrito una pequeña aplicación cliente de pruebas, que me funciona perfectamente cuando conecto al Servidor IIS 7, pero que da error al no poder recuperar el WDSL cuando quiero usar el WebService en el IIS 6.

En el IIS 6 cuando entro en navegador a su URL, veo la interfaz del WebService, pero si intento por ejemplo acceder al WDSL no me lo devuelve.

Enlace :

http://79.148.227.58...wsdl/ISolfaPort

¿ Que creeis que puede ocurrir ?.

Gracias.
  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 15 junio 2012 - 01:37

Vaya, si que está raro, no puedo acceder al WS, incluso con soapUI :s

Saludos
  • 0

#3 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 15 junio 2012 - 01:58

Vaya, si que está raro, no puedo acceder al WS, incluso con soapUI :s

Saludos


¿ Verdad que es raro ?, puesto que el CGI que proporciona el WebService se ejecuta, dado que en caso contrario no se vería la interfaz del WebService en el navegador. Y resulta que ese mismo CGI en otro equipo no me da ningún problema.

¿ Puede ser que en ese servidor falten librerías de soporte para generación de los archivos XML del WebService, o alguna otra tontería por el estilo ?.

La verdad es que no sé ni por donde empezar a mirar :(.

¿ Hay alguna alternativa para servir los WebServices (como instalar Apache, ..., en ese servidor) ?, ¿ funcionaría mejor ?.

La verdad es que estoy llegando a odiar esta tecnología, la cantidad de cosas raras a las que te tienes que enfrentar es abrumadora.
  • 0

#4 jdepaz

jdepaz

    Advanced Member

  • Miembros
  • PipPipPip
  • 264 mensajes
  • LocationMedellín Colombia

Escrito 15 junio 2012 - 06:58

Hola,

podría ser alguna restricción o parametrización de los "bindings" en el archivo de configuración, es cuestión de investigar


Saludos a todos
  • 0

#5 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 16 junio 2012 - 02:51

Hola.

Hola,

podría ser alguna restricción o parametrización de los "bindings" en el archivo de configuración, es cuestión de investigar


Saludos a todos


No conozco ningún archivo de configuración que este relacionado con este tema. ¿ Me puedes pasar algún enlace que de información adicional referente a estos "bindings" y a ese archivo de configuración ?.

Gracias.
  • 0

#6 jdepaz

jdepaz

    Advanced Member

  • Miembros
  • PipPipPip
  • 264 mensajes
  • LocationMedellín Colombia

Escrito 17 junio 2012 - 12:08

Hola,

Prueba agregando la extensión del archivo WSDL al II6 para que lo acepte.


Ayuda:

http://forums.iis.ne...23/1745984.aspx

Saludos a todos
  • 0

#7 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 17 junio 2012 - 01:36

Hola,

Prueba agregando la extensión del archivo WSDL al II6 para que lo acepte.


Ayuda:

http://forums.iis.ne...23/1745984.aspx

Saludos a todos


Ese hilo trata de un WebService que funcionaba bien en IIS 6 y que no podían configurarlo en IIS 7. Mi problema es exactamente al revés, me funciona perfectamente en IIS 7 (después de pelearme mucho con la configuración) y en cambio no parece activo en IIS 6 (donde supuestamente no hay que configurar absolutamente nada, excepto activar las WebService Extensions, cosa que ya he hecho).

Saludos.
  • 0

#8 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 17 junio 2012 - 10:50

He hecho la prueba en un IIS 7 y me da el mismo error que en IIS 5 y 6, a mi me parece que hay algo que no está bien definido en tu web service.

Saludos
  • 0

#9 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 18 junio 2012 - 02:41

Gracias por haberte tomado el tiempo de probarlo.

He hecho la prueba en un IIS 7 y me da el mismo error que en IIS 5 y 6, a mi me parece que hay algo que no está bien definido en tu web service.

Saludos


He abierto un puerto en mi router, aquí puedes acceder al servicio en marcha en IIS 7. A mi se me ejecutan bien sus llamadas (he programado un cliente, y las llamadas devuelven lo que se espera de ellas).

http://idata.homeip....wsdl/ISolfaPort

Aquí se puede descargar el binario, por si es de alguna utilidad.

www.idata.com.es/tmp/SolfaPort.exe

Voy a intentar hacer alguna prueba más, pero la verdad es que no sé donde empezar a mirar.

Saludos.
  • 0

#10 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 06:51

He abierto un puerto en mi router, aquí puedes acceder al servicio en marcha en IIS 7. A mi se me ejecutan bien sus llamadas (he programado un cliente, y las llamadas devuelven lo que se espera de ellas).

http://idata.homeip....wsdl/ISolfaPort


Ahora si he podido acceder al wsdl, ésto en IIS 7, más tarde haré la prueba con IIS menores.

Saludos
  • 0

#11 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 18 junio 2012 - 10:37

Una cosa que no entiendo es porqué no puedo poner el WebService como DLL en IIS 6.

En IIS 7 me funciona tanto el WebService como CGI y como DLL. Pero en IIS 6 no logro que cargue la DLL.

¿ Hay que hacer algo especial, aparte de activar las WebService Extensions ?.

Saludos.
  • 0

#12 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 10:41

Una cosa que no entiendo es porqué no puedo poner el WebService como DLL en IIS 6.

En IIS 7 me funciona tanto el WebService como CGI y como DLL. Pero en IIS 6 no logro que cargue la DLL.

¿ Hay que hacer algo especial, aparte de activar las WebService Extensions ?.

Saludos.


Hola Marc

Ya no entendí, tu problema es que quieres instalar la DLL en diferentes máquinas ?

Pensé que el problema era consumirlo, en IIS 6 o menor, solo se configura lo básico, no hay nada de extensiones.

Saludos
  • 0

#13 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 18 junio 2012 - 12:15

Hola.


Una cosa que no entiendo es porqué no puedo poner el WebService como DLL en IIS 6.

En IIS 7 me funciona tanto el WebService como CGI y como DLL. Pero en IIS 6 no logro que cargue la DLL.

¿ Hay que hacer algo especial, aparte de activar las WebService Extensions ?.

Saludos.


Hola Marc

Ya no entendí, tu problema es que quieres instalar la DLL en diferentes máquinas ?

Pensé que el problema era consumirlo, en IIS 6 o menor, solo se configura lo básico, no hay nada de extensiones.

Saludos


En Delphi el WebService lo puedes implementar o bien como un ejecutable CGI o bien como una DLL ISAPI. Lo he compilado de las dos formas, y en IIS 7 me ejecuta correctamente el WebService tanto como ejecutable CGI y como DLL.

El problema está en IIS 6, donde da un error de página inaccesible si intento acceder al WebService mediante su DLL ISAPI, y en cambio como CGI sí que ejecuta algo (mostrando la interfaz del servicio en el navegador), pero sin devolver la WSDL ni correr los Webservices.

¿ Si te proporciono unas credenciales de conexión a escritorio remoto al Servidor de producción, tendrías unos minutos para comprovar si ves algún error en la configuración del IIS 6 o del directorio virtual para el Webservice ?.

Gracias por el interés en mi problema.
  • 0

#14 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 18 junio 2012 - 12:35

Adjunto el código fuente del WebService.

El código fuente está compartido en dos proyectos, para poder compilarlo tanto como DLL ISAPI y como ejecutable CGI.

Pero la verdad es que no creo que pueda haber mucho mal en ese webservice, puesto que en estos momentos solo es el esqueleto de código que genera Delphi. Lo único que he añadido son unas lineas para guardar un registro de las llamadas recibidas al WebService, y así poder comprobar que las comunicaciones funcionan bien y recibimos la información que se nos envía.

Está hecho en Delphi 2010 (trabajo habitualmente en Delphi 7 y 2010, y en este caso concreto, preferí compilarlo en Delphi 2010 para que Delphi compilara sus últimas librerías respecto a WebServices).
  • 0

#15 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 12:46

Voy a intentar generar el WS y ver que hace, si qiueres pasame por correo o mensaje privado la forma de conectarme a tu escritorio remoto, espero que no tenga bloqueada esa salida aqui en la oficina, si no, lo puedo hacer en mi casa llegando 8PM GMT-6 o sea 3AM tuyo :D

Saludos
  • 0

#16 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 12:48

Caray

No puedo abrirlo con mi Delphi2007

---------------------------
Error
---------------------------
The project can not be loaded because the required personality Delphi.Personality.12 is not available.

Unable to create project F:\marc\SolfaDLL.dproj. This project will be removed from the project group.
---------------------------
OK 
---------------------------


:(

Saludos
  • 0

#17 jdepaz

jdepaz

    Advanced Member

  • Miembros
  • PipPipPip
  • 264 mensajes
  • LocationMedellín Colombia

Escrito 18 junio 2012 - 08:48

Preguntas sobre IIS 6:

¿Los permisos sobre las carpetas que tiene la DLL están habilitados?

¿La ejecución de "scripts and executables" está seteada?


Ayuda:

http://forums.esri.c...f=1312&t=136681

  • 0

#18 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 10:47

Hola Marc

Dos cosas.

1. La dll es considerada por mi AV como un virus, supongo que es un Falso-Positivo. Tal vez eso tiene que ver algo.

2. Otra cuestión y me parece que por ahí va el asunto es la definición del WSDL que haces

        defWSDL = '.\OperacioPracticWS.WSDL';

Yo le paso las url desde un archivo INI y funciona en IIS 5.1 sin problema

[CONFIGURA]
WSDL = http://movil/SolfaDL...wsdl/ISolfaPort (defWSDL)
URL  = http://movil/SolfaDL...soap/ISolfaPort (defURL)

Saludos

Archivos adjuntos


  • 0

#19 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 18 junio 2012 - 10:57

Intentaré hacer unos pequeños cambios a tu WS, a ver que te parecen. Espero que mañana los tenga listos.

Saludos
  • 0

#20 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 19 junio 2012 - 09:14

Preguntas sobre IIS 6:

¿Los permisos sobre las carpetas que tiene la DLL están habilitados?


¿ Te refieres a los permisos sobre el sistema de archivo de Windows Server ?. Sí, he asignado derechos de lectura/ejecución para el grupo Todos.

¿La ejecución de "scripts and executables" está seteada?


Sí, lo he configurado en IIS 6, en el directorio virtual.

Ayuda:

http://forums.esri.c...f=1312&t=136681


Saludos.
  • 0




IP.Board spam blocked by CleanTalk.