2009-07-10 22 views
11

Estoy desarrollando un servicio web SOAP. Una de las funciones es isAlive(). No tiene parámetros de entrada. ¿Cuál es la mejor práctica para WSDL? Intenté ...WSDL - sin entrada - mejor práctica

<wsdl:operation name="isAlive"> 
    <wsdl:output message="tns1:isAliveMessage"/> 
</wsdl:operation> 

... pero obtuve un error de análisis en una de mis herramientas debido a la falta de información. Encontré un par de ejemplos donde se definió una entrada y un mensaje y la definición de tipo correspondiente estaba vacía, es decir, <xsd:complexType name="somename"/>. ¿Es esto mejor?

Gracias!

Respuesta

1

Es una buena práctica definir documentos de entrada y salida para cada operación, incluso si están vacías. Estas operaciones "vacías" tienen el hábito de no estar tan vacías a largo plazo, y definir un tipo de documento de marcador de posición por adelantado puede ahorrarle molestias.

Por ejemplo, considere que la solicitud isAlive puede terminar conteniendo alguna indicación de lo que está preguntando. Mantiene sus opciones abiertas, y como un efecto secundario genera WSDL válido :)

6

Definitivamente necesita un mensaje de entrada - ¿de qué otro modo podría el servidor indicar a qué operación desea llamar?

Si usa el estilo de documento (que debería), el mensaje de entrada debe ser un elemento único sin contenido.