El nodo
CICSRequest puede devolver distintos
mensajes de respuesta que indican el éxito o el error de la solicitud enviada a
CICS Transaction
Server for z/OS.
El nodo
CICSRequest tiene cuatro terminales de
salida:
- Salida: terminal de salida desde el que se propaga el árbol de mensajes,
incluidos los datos devueltos desde
CICS.
- Anomalía: terminal de salida al que se direcciona un mensaje si se detecta
una excepción del nodo CICSRequest,
o si se produce un fallo de conexión del nodo
CICSRequest con
CICS.
- Error: terminal de salida al que se propaga un mensaje si se produce un
error (terminación anómala) de CICS.
- Tiempo de espera: terminal de salida al que se propaga el mensaje si se
excede el tiempo de espera por solicitud cuando se envía una solicitud a
CICS y la solicitud tarda
demasiado.
Puede seleccionar la ubicación a la que desea enviar la
respuesta configurando la propiedad
Ubicación
de datos de salida del separador Resultado del nodo
CICSRequest.
Esta propiedad especifica la ubicación en el árbol de mensajes en el que el
nodo
CICSRequest coloca la salida.
- Proceso de llamadas satisfactorias
Cuando un nodo CICSRequest llama
correctamente a una aplicación CICS,
el mensaje resultante se propaga al terminal de salida.
- Proceso de terminaciones anormales de
CICS
Una terminación anormal en CICS
da lugar a que se propague un mensaje desde el terminal de error. El mensaje de entrada se propaga con un campo
CICS\AbendCode
en LocalEnvironment. Si el terminal de error no está conectado, la terminación anormal se pierde.
Si se produce una terminación anómala y el nodo
CICSRequest está configurado para
participar en la transacción de intermediario, la tarea de
CICS se retrotrae de forma inmediata. Si
varios nodos CICS están implicados en la unidad de trabajo, la actividad CICS de
cada uno de los nodos se retrotrae, tanto si la terminación anómala se maneja
mediante un terminal de errores o anomalías como si no. Cualquier proceso posterior llevado a
cabo por CICS como parte del proceso del
mensaje se realiza bajo una nueva unidad de trabajo. 
Una unidad de trabajo es el trabajo realizado por los nodos de un flujo
que comparten el mismo recurso; en este caso, una unidad de trabajo es todo el
trabajo realizado por los nodos
CICSRequest en un flujo que está
conectado al mismo servidor CICS (mediante un URL o un servicio configurable
definido en la propiedad servidor CICS).
Por ejemplo, si un flujo de mensajes contiene cinco nodos CICS, tres de los cuales
están conectados al servidor CICS A y dos de los cuales están conectados al servidor
CICS B, todo el trabajo que han realizado los nodos conectados al servidor A forma
una unidad de trabajo y todo el trabajo realizado por los nodos conectados al
servidor B forma una unidad de trabajo independiente. Si se produce una terminación
anómala en uno de los nodos CICS que están conectados al servidor CICS A, se
retrotrae el trabajo realizado por todos los nodos CICS del flujo que están
conectados al servidor A, puesto que forma una única unidad de trabajo. Cualquier
trabajo posterior realizado por un nodo
CICSRequest conectado al servidor A
iniciará una nueva unidad de trabajo y la unidad de trabajo para el servidor B no
se verá afectado por la retrotracción de la unidad de trabajo para el servidor A.
- Proceso de tiempos de espera excedidos de solicitud
Si un nodo CICSRequest está
configurado con una propiedad Tiempo de espera
de solicitud del separador Básico, y un mensaje determinado tarda más
en procesarse del tiempo especificado en segundos, la solicitud falla y el
mensaje se propaga desde el terminal de tiempo de espera. El mensaje de salida contiene el cuerpo del mensaje de entrada y una excepción de tiempo de espera
en ExceptionList.
Si el terminal de tiempo de espera no está conectado y
se excede un tiempo de espera, la excepción de tiempo de espera se direcciona
al terminal de anomalía. Si el terminal de anomalías no está
conectado, el intermediario genera una excepción y devuelve el control al
nodo más próximo que lo puede procesar. El comportamiento predeterminado es que el mensaje se devuelve al nodo de entrada.
- Manejo de anomalías en el nodo
Todas las demás anomalías se propagan al terminal de anomalía. Las anomalías posibles incluyen:
- Incapacidad de comunicarse con la región de CICS de destino.
- Detección de una excepción interna del nodo
CICSRequest.
- Cuerpo de mensaje no válido. Por ejemplo, un error de análisis o un mensaje
de entrada crea una estructura que es mayor que la propiedad
Longitud del área de comunicación del
separador Básico configurada en el nodo
CICSRequest.
No se puede detectar una situación parecida para el área de comunicación de retorno.
Por ejemplo, si los datos de retorno son mayores que el valor definido en la
propiedad Longitud del área de
comunicación, se produce una fuga de memoria en
CICS.
Por consiguiente, la propiedad Longitud del área de comunicación
del separador Básico debe estar correctamente configurada.
Puede utilizar el servicio configurable CICSConnection para cambiar
los detalles de la conexión para el nodo
CICSRequest. Consulte
Cambio de la información de conexión para el nodo CICSRequest para obtener información detallada sobre
cómo crear, cambiar, notificar y suprimir el servicio configurable
CICSConnection.