Arreglo acumulativo 3 de IBM BPM versión 8570Adición de cabeceras SOAP a un mensaje de solicitud SOAP

Puede añadir una cabecera SOAP a un mensaje de solicitud creando una variable de tipo SOAPHeader o SOAPHeaders. A continuación, puede correlacionar esta variable con la solicitud de cabecera SOAP.

Procedimiento

  1. Cree una variable privada:
    • En Arreglo acumulativo 3 de IBM BPM versión 8570web Process Designer, cree un flujo de servicios y añada una tarea de servicio.
    • En Process Designer, cree un servicio de integración que incluya un componente de integración de servicio web.
  2. Seleccione la tarea de servicio o el componente de integración de servicio web y pulse la pestaña Variables situada encima del área de diagrama.
  3. Cree la variable privada que correlacionará después con la cabecera SOAP del mensaje de solicitud. Para añadir una sola entrada de cabecera al mensaje de solicitud, utilice el tipo de variable SOAPHeader. Para añadir varias cabeceras al mensaje de solicitud, utilice el tipo de variable SOAPHeaders.
  4. Inicialice la variable que ha creado en el paso 3. Puede inicializar la variable de tres formas:
    • Defina un valor predeterminado en la página en la que ha creado la variable.
    • Añada código JavaScript a un componente de script de servidor.
    • Pulse Previo y posterior y añada código JavaScript a la sección Asignaciones previas a la ejecución.
    El ejemplo siguiente de código JavaScript inicializa una variable privada, requestHeader, que es del tipo SOAPHeader y contiene una sola entrada de cabecera:
    tw.local.requestHeader.name = "sessionId";
    tw.local.requestHeader.nameSpace = "http://acme.com";
    tw.local.requestHeader.value = "<x:sessionId xmlns:x=\"http://acme.com\">1237314</x:sessionId>";
    Nota: Asegúrese de que los espacios de nombres estén totalmente calificados, tal como se muestra en los ejemplos.
    Nota: Intente evitar espacios en blanco en un valor de cabecera SOAP. Se recomienda añadir el fragmento de código XML sin ningún espacio en blanco adicional.
    Puede incluir más de una cabecera. El siguiente ejemplo de código JavaScript inicializa dos cabeceras SOAP y las añade a la variable privada requestHeaders, que es del tipo Cabeceras y contiene varias cabeceras:
    // Inicializar la cabecera “subscriptionId”
    var header1 = new tw.object.SOAPHeader();
    header1.name = "subscriptionId";
    header1.nameSpace = "http://acme.com";
    header1.value = "<x:subscriptionId xmlns:x=\"http://acme.com\">123-4567-9012</x:subscriptionId>";  
    
    // Inicializar la cabecera “auditLogUUID” 
    var header2 = new tw.object.SOAPHeader(); 
    header2.name = "auditLogUUID"; 
    header2.nameSpace = "http://acme.com"; 
    header2.value = "<x:auditLogUUID xmlns:x=\"http://acme.com\">ab74-ffce-3333-feab</x:auditLogUUID>";  
    
    // Ahora añada las dos cabeceras a la variable SOAPHeaders 
    tw.local.requestHeaders.headers[0] = header1; 
    tw.local.requestHeaders.headers[1] = header2;
  5. En la pestaña Correlación de datos de la vista Propiedades, en la sección Correlación de cabeceras de entrada, añada la variable recién creado (ya sea requestHeader o requestHeaders) para correlacionarla a una cabecera de solicitud SOAP.
  6. Complete la definición de la integración de servicio web.
  7. Pulse Guardar o Arreglo acumulativo
2017.03 de IBM BPM versión 8570Finalizar edición.
  8. Ejecute el flujo de servicios o servicio de integración pulsando Ejecutar servicio y verifique que las cabeceras SOAP se añaden al mensaje de solicitud.