Compartir a través de


Cómo configurar la forma Envío

Imagen que representa la forma Enviar.
Forma Enviar

Si espera recibir una respuesta indirecta o asíncrona (sin utilizar un puerto de solicitud-respuesta) al mensaje que ha enviado, tendrá que correlacionar el mensaje con la instancia de orquestación que se esté ejecutando en ese momento, para que el destinatario pueda obtener la respuesta en la instancia correcta. Puede aplicar un siguiente conjunto de correlación a la forma Enviar para una correlación inicializada previamente, o bien puede aplicar un conjunto de correlación de inicialización. Para obtener más información, vea Usar correlaciones en orquestaciones.

Para configurar una forma Envío

  1. Establezca un mensaje y una operación de puerto.

    1. En la ventana Vista orquestación, compruebe que la orquestación tiene un mensaje y una operación de puerto definidos para el tipo de mensaje de varias partes que se envía.

    2. En el ventana Propiedades, seleccione el mensaje que se va a enviar desde la lista desplegable Propiedad de mensaje.

    3. En el ventana Propiedades, seleccione la operación de puerto que envía el mensaje en la lista desplegable Operación de puerto.

      —O—

      Arrastre el conector de envío desde la forma Enviar al socket de puerto que envía el mensaje.

  2. Especifique los conjuntos de correlación para restringir los mensajes que enviará la forma Enviar o para inicializar los valores de un conjunto de correlación.

    1. Para cada conjunto de correlación que quiera usar, compruebe un conjunto de correlación en la lista desplegable de la propiedad Conjuntos de correlación siguientes.

    2. Para cada conjunto de correlación que desee inicializar, compruebe un conjunto de correlación en la lista desplegable de la propiedad Initializing Correlation Sets (Inicializar conjuntos de correlación).

Notificación de entrega

Para probar si ha enviado correctamente un mensaje a través de un puerto de envío, realice los pasos siguientes:

  1. Coloque la forma Envío en un ámbito no transaccional, atómico o de larga ejecución.

  2. En el puerto de envío, establezca la propiedad DeliveryNotification en Transmitido.

  3. Agregue un controlador de detección al ámbito para que controle una excepción DeliveryFailureException.

    Nota

    Si la forma Send se encuentra dentro de un ámbito atómico, deliveryFailureException todavía se puede detectar, pero requerirá que se agregue una forma de ámbito exterior con un tipo de transacción establecido en Long Running o None. Los ámbitos atómicos no pueden detectar excepciones directamente.

    La orquestación espera la confirmación al final del ámbito no atómico envolvente o espera al final de la orquestación recibir la confirmación.

Nota

Esto se aplica únicamente a las operaciones unidireccionales; el error en operaciones bidireccionales (solicitud-respuesta) a lugar a una excepción SoapException (confirmación negativa) incluso sin el atributo de puerto que se establece.

Nota

La notificación de entrega no se admite para el enlace directo.

Consulte también

Tratamiento de errores