Ejercicio 1.3: crear el método Java
Antes de empezar, debe completar el Ejercicio 1.2: configurar el
proyecto Web y la interfaz e implementaciones Java.
En el Ejercicio 1.2 se describen los pasos para crear un método Java, getCustomerInfo.
En este ejercicio realizará las siguientes tareas:
- Crear un método Java
- Crear la correlación de datos de entrada entre COBOL y Java
- Crear la correlación de datos de salida entre COBOL y Java
Crear un método Java
Ahora vamos a crear un método Java que utilizará el importador COBOL para correlacionar
los tipos de datos entre el fuente COBOL y los datos del método Java.
- En la página Método Java, pulse Añadir.
- En el campo Nombre de método Java especifique getCustomerInfo
para el nombre de la operación. Pulse Siguiente.
Crear la correlación de datos del parámetro de entrada
En este paso importará el archivo taderc25.cbl
(COBOL) necesario para crear la aplicación. El archivo taderc25.ccp se encuentra en
<RSDP_installdir>\rad\eclipse\plugins\com.ibm.j2c.cheatsheet.content_6.0.0\Samples\CICS\taderc25,
donde <RSDP_installdir> es el directorio en el que se ha instalado este producto.
El archivo COBOL contiene el programa que se ejecuta en el servidor CICS. Tiene la
definición de la estructura que se pasa al servidor CICS a través del área de
comunicaciones (COMMAREA). Esta estructura representa los registros de cliente que se
devuelven de la aplicación CICS. Antes de poder trabajar con un archivo, debe importarlo
del sistema de archivos al entorno de trabajo.
- En el campo Especificar tipo de entrada/salida de la página Método Java, pulse
Nuevo.
- En la página Importar datos, asegúrese de que el campo Elegir correlación es
COBOL_TO_JAVA.
- Pulse Examinar junto al campo Nombre de archivo Cobol.
- Busque el archivo taderc25.cbl en el sistema de archivos y pulse Abrir.
- Pulse Siguiente.
- En la página Importador COBOL, seleccione una estructura de datos de comunicación:
- Seleccione Win32 para Nombre de plataforma.
- Seleccione ISO-8859-1 para Página de códigos.
- Pulse Consultar.
- Seleccione ICOMMAREA para Estructuras de datos. Pulse Siguiente
- En la página Guardar propiedades:
- Seleccione Valor por omisión para Estilo de generación.
- Pulse Examinar para elegir el proyecto Web Taderc25Sample.
- En el campo Nombre de paquete, escriba sample.cics.data.
- En el campo Nombre de clase, el valor por omisión es ICOMMAREA;
sustitúyalo por InputComm.
Pulse Terminar.
Crear las múltiples salidas posibles para el parámetro de salida
- En el campo Especificar tipo de entrada/salida de la página Método Java, pulse
Nuevo junto al área del tipo de Salida.
- En la página Importar datos, asegúrese de que el campo Elegir correlación es
COBOL_MPO_TO_JAVA.
-
Pulse Nuevo junto al área de las múltiples salidas posibles.
- Pulse Examinar junto al campo Nombre de archivo Cobol y busque el
archivo taderc25.cbl. Pulse Abrir.
- Pulse Siguiente.
- En la página Importador COBOL, seleccione una estructura de datos de comunicación.
- Seleccione Win32 para Nombre de plataforma.
- Seleccione ISO-8859-1 para Página de códigos.
- Pulse el botón Consultar para seleccionar Estructuras de datos.
- Seleccione PREFCUST, REGCUST y BADCUST para Estructuras de
datos.
- Pulse Terminar.
- En la página Especificar propiedades de configuración de importación de datos,
figurarán los tres tipos de datos.
- Pulse Siguiente.
Especificar las propiedades de guardado
- En la página Guardar propiedades verá valores por omisión para cada uno de los
registros de tipo personalizado.
- En la página Especificar propiedades de guardado, en la sección Enlace de datos:
- Acepte el proyecto Java Taderc25Sample.
- En el campo Nombre de paquete, escriba sample.cics.data.
- En el campo Nombre de clase, escriba OutputComm.
- En las propiedades de guardado COBOL a Java para "PREFCUST":
- Acepte el nombre de proyecto Taderc25Sample.
- En el campo Nombre de paquete, escriba sample.cics.data.
- En el campo Nombre de clase, escriba PrefCust.
- En las propiedades de guardado COBOL a Java para "REGCUST":
- Pulse Examinar para elegir el proyecto Web Taderc25Sample.
- En el campo Nombre de paquete, escriba sample.cics.data.
- En el campo Nombre de clase, escriba RegCust.
- En las propiedades de guardado COBOL a Java para "BADCUST":
- Pulse Examinar para elegir el proyecto Web Taderc25Sample.
- En el campo Nombre de paquete, escriba sample.cics.data.
- En el campo Nombre de clase, escriba BadCust.
- Pulse Terminar. Verá que OutputComm contiene PrefCust, RegCust y BadCust en el
tipo de salida.
- En la página Método Java, pulse Terminar para completar la operación.
- En la página Métodos Java,
- Escriba el ID de programa COBOL (TADERC25) en el campo
functionName.
- Escriba 50 en el campo commareaLength.
- Seleccione el valor SYNC_RECEIVE(1) en el campo interactionVerb.
- Escriba -1 en el campo replyLength.
Pulse Terminar.
Añadir el código de patrón de reconocimiento en la generación del archivo de
correlación de datos de salida Java
Dado que la salida que proviene del programa puede ser de cualquiera de los tipos de
datos, el único modo de identificarla consiste en tener algunos patrones predefinidos
en la corriente de datos. El método de identificación se basa en comprobar el patrón de
reconocimiento.
- Para añadir el patrón de reconocimiento de PrefCust:
- Abra el archivo PrefCust.java en un editor Java.
- Desplácese hasta el método getPcustcode().
- En el área de comentarios del método, añada el código
@type-descriptor.recognition-desc pattern="PREC" o utilice la asistencia de
contenido pulsando Ctrl-Espacio, recorra la lista hasta encontrar el código y especifique
"PREC" como patrón.
- Guarde los cambios y se regenerará el código de PrefCust.java.
- Desplácese hasta el método de identificación para asegurarse de que el cambio
se ha efectuado.
/**
* @generated
*/
public boolean match(Object obj) {
if (obj == null)
return (false);
if (obj.getClass().isArray()) {
byte[] currBytes = buffer_;
try {
byte[] objByteArray = (byte[]) obj;
buffer_ = objByteArray;
if (!("PREC".equals(getPcustcode().toString())))
return (false);
} catch (ClassCastException exc) {
return (false);
} finally {
buffer_ = currBytes;
}
} else
return (false);
return (true);
}
- Para añadir el patrón de reconocimiento de RegCust:
- Abra el archivo RegCust.java en el editor Java.
- Desplácese hasta el método getRcustcode().
- En el área de comentarios del método, añada el código
@type-descriptor.recognition-desc pattern="REGC" o utilice la asistencia de
contenido pulsando Ctrl-Espacio, recorra la lista hasta encontrar el código y especifique
"REGC" como patrón.
- Guarde los cambios y se regenerará el código de RegCust.java.
- Desplácese hasta el método de identificación para asegurarse de que el cambio se ha
efectuado.
/**
* @generated
*/
public boolean match(Object obj) {
if (obj == null)
return (false);
if (obj.getClass().isArray()) {
byte[] currBytes = buffer_;
try {
byte[] objByteArray = (byte[]) obj;
buffer_ = objByteArray;
if (!("REGC".equals(getRcustcode().toString())))
return (false);
} catch (ClassCastException exc) {
return (false);
} finally {
buffer_ = currBytes;
}
} else
return (false);
return (true);
}
- Para añadir el patrón de reconocimiento de BadCust:
- Abra el archivo BadCust.java en el editor Java.
- Desplácese hasta el método getBcustcode().
- En el área de comentarios del método, añada el código
@type-descriptor.recognition-desc pattern="BADC" o utilice la asistencia de
contenido pulsando Ctrl-Espacio, recorra la lista hasta encontrar el código y especifique
"BADC" como patrón.
- Guarde los cambios y se regenerará el código de BadCust.java.
- Desplácese hasta el método de identificación para asegurarse de que el cambio se ha
efectuado.
public boolean match(Object obj) {
if (obj == null)
return (false);
if (obj.getClass().isArray()) {
byte[] currBytes = buffer_;
try {
byte[] objByteArray = (byte[]) obj;
buffer_ = objByteArray;
if (!("BADC".equals(getBcustcode().toString())))
return (false);
} catch (ClassCastException exc) {
return (false);
} finally {
buffer_ = currBytes;
}
} else
return (false);
return (true);
}
Ahora ya está preparado para empezar el Ejercicio 1.4: desplegar
la aplicación.