< Anterior | Próximo >

Lição 3: Criar um Método Java

A lição 3 conduz você durante a criação de um método Java™.
Antes de começar, conclua a Lição 2: Configurar um Projeto da Web e Interface Java e Implementações.
Nesta lição, você
  1. Agora você cria um método Java que usa o importador COBOL para mapear os tipos de dados entre a origem COBOL e os dados no método Java. Abra a visualização Fragmentos clicando em Janela > Mostrar Visualização > Fragmentos. Na visualização Fragmentos, clique em J2C.
  2. Clique com o botão direito do mouse em Incluir método Java no Java bean J2C e selecione Inserir.
  3. Na página Novo Método Java, clique em Incluir.
  4. No campo Nome, digite getCustomerInfo.
  5. Nesta etapa, importe o arquivo taderc25.cbl (COBOL) que é necessário para a criação de seu aplicativo. O arquivo taderc25.cbl está localizado em <installdir>IBM/IBMIMShared/plugins/com.ibm.j2c.cheatsheet.content/Samples/CICS/taderc25, em que <installdir> é o diretório onde o produto está instalado. O arquivo COBOL contém o programa que é executado no servidor CICS. Ele tem a definição da estrutura a ser passada para o servidor CICS através da área de comunicação (COMMAREA). Essa estrutura representa os registros do cliente sendo retornados do aplicativo CICS. Antes de poder trabalhar com um arquivo, você deve importá-lo do sistema de arquivos no ambiente de trabalho. Além do campo Tipo de Entrada, clique em Novo.
  6. Na página Importação de Dados, assegure-se de que o campo Escolher Mapeamento seja COBOL_TO_JAVA. Clique em Navegar ao lado do arquivo COBOL
  7. Localize o arquivo taderc25.cbl no sistema de arquivos e clique em Abrir.
    taderc25.cbl
          identification division.
           program-id. TADERC25.
           environment division.
           data division.
           working-storage section.
           01 tmp pic a(40).
           01  ICOMMAREA.
               02  ICustNo    PIC X(5).
               02  Ifiller    PIC X(11).
           01  GENCUST.
               02  GCUSTCODE PIC X(4).
               02  GFILLER PIC X(40).
           01  PREFCUST.
               02  PCUSTCODE PIC X(4).
               02  PCUSTNO    PIC X(5).
               02  ASSETS  PIC S9(6)V99.
           01  REGCUST.
               02  RCUSTCODE PIC X(4).
               02  RCUSTNO    PIC X(5).
               02  ACCOUNTNAME PIC A(10).
               02  BALANCE PIC S9(6)V99.
           01  BADCUST.
               02  BCUSTCODE PIC X(4).
               02  BCUSTNO    PIC X(5).
               02  DAYSOVERDUE PIC X(4).
               02  AMOUNT PIC S9(6)V99.
           LINKAGE SECTION.
           01 DFHCOMMAREA.
              02 inputfield pic x(50).
           procedure division.
           start-para.
               move DFHCOMMAREA to ICOMMAREA.
               IF ICustNo EQUAL '12345'
                  move 'PREC' to PCUSTCODE
                  move ICustNo to PCUSTNO
                  move 43456.33 to ASSETS
                  move PREFCUST TO DFHCOMMAREA
               ELSE IF ICustNo EQUAL '34567'
                       move 'REGC' to RCUSTCODE
                       move ICustNo to RCUSTNO
                       move 'SAVINGS' TO ACCOUNTNAME
                       move 11456.33 to BALANCE
                       move REGCUST TO DFHCOMMAREA
                    ELSE
                       move 'BADC' to BCUSTCODE
                       move ICustNo to BCUSTNO
                       move '132' to DAYSOVERDUE
                       move -8965.33 to AMOUNT
                       move BADCUST TO DFHCOMMAREA
          *         END-IF.
               END-IF.
               EXEC CICS RETURN
               END-EXEC.
  8. Clique em Avançar.
  9. Na página Importador COBOL, selecione uma estrutura de dados de comunicação:
    1. Selecione Win32 para Nome da Plataforma.
    2. Selecione ISO-8859-1 para Página de Códigos.
    3. Clique em Consultar.
    4. Selecione ICOMMAREA para Estruturas de Dados.
  10. Clique em Avançar.
  11. Na página Salvando Propriedades:
    1. Selecione Padrão para Estilo de Geração.
    2. Clique em Navegar para escolher o projeto da web Taderc25Sample.
    3. No campo Nome do Pacote, digite sample.cics.data
    4. No campo Nome da Classe, o valor padrão é ICOMMAREA; substitua-o por InputComm.
  12. Clique em Concluir.
  13. No campo Especificar o tipo de entrada/saída na página Método Java, clique em Novo ao lado da área Tipo de Saída.
  14. Na página Importação de Dados, assegure-se de que o campo Escolher Mapeamento seja COBOL_MPO_TO_JAVA.
  15. Clique em Novo ao lado da área de diversas saídas possíveis.
  16. Clique em Navegar ao lado do campo Nome do Arquivo Cobol e encontre o local do arquivo taderc25.cbl. Clique em Abrir.
  17. Clique em Avançar.
  18. Na página Importador COBOL, selecione uma estrutura de dados de comunicação:
    1. Selecione Win32 para Nome da Plataforma.
    2. Selecione ISO-8859-1 para Página de Códigos.
    3. Clique em Consultar.
    4. Selecione PREFCUST, REGCUST e BADCUST para Estruturas de Dados.
  19. Clique em Concluir. Na página Especificar propriedades de configuração de importação de dados, você verá os três tipos de dados listados.
  20. Clique em Avançar.
  21. Na página Salvando Propriedades, é possível ver os valores padrão configurados para cada registro de tipo de cliente. Assegure-se de que Taderc25Sample apareça no campo Nome do Projeto. Clique em Navegar e escolha o projeto da web Taderc25Sample.
    1. Na página Salvando Propriedades, destaque Tipo de Contêiner COBOL MPO.
      • Digite sample.cics.data no campo Nome do Pacote
      • Digite OutputComm no campo Nome da Classe.
      • É possível selecionar Sobrescrever Classe Existente.
    2. Expanda Salvar Propriedades do COBOL MPO para Java. Os três elementos de ligação de dados aparecem.
    3. Destaque COBOL para Java: Salvar propriedades para "PREFCUST" no arquivo taderc25.cbl
      • Para Estilo de Geração, selecione Padrão.
      • Digite sample.cics.data no campo Nome do Pacote
      • Digite PrefCust no campo Nome da Classe.
      • É possível selecionar Sobrescrever Classe Existente.
    4. Destaque COBOL para Java: Salvar propriedades para "REGCUST" no arquivo taderc25.cbl.
      • Digite sample.cics.data no campo Nome do Pacote
      • Digite RegCust no campo Nome da Classe.
      • É possível selecionar Sobrescrever Classe Existente.
    5. Destaque COBOL para Java: Salvar propriedades para "BADCUST" no arquivo taderc25.cbl.
      • Digite sample.cics.data no campo Nome do Pacote
      • Digite BadCust no campo Nome da Classe.
      • É possível selecionar Sobrescrever Classe Existente.
  22. Clique em Concluir. Expanda OutputComm e é possível ver que ele contém PrefCust, RegCust e BadCust no campo Tipo de Saída.
  23. Na página Método Java, clique em Concluir.
  24. Na página Métodos Java:
    1. Digite TADERC25 (o ID do programa COBOL) no campo functionName.
    2. Selecione Mostrar Avançado.
    3. Selecione SYNC_SEND_RECEIVE(1) no campo interactionVerb.
    4. Digite -1 no campo replyLength.
  25. Clique em Concluir.
  26. Como a saída retornada pode ser qualquer tipo de dados, a única maneira de correspondê-la é ter algum padrão predefinido no fluxo de dados. O método de correspondência verifica o padrão de reconhecimento.

    Incluir tag doclet para padrão de reconhecimento

    1. Para incluir o padrão de reconhecimento para PrefCust:
      • Abra o arquivo PrefCust.java em um editor Java.
      • Navegue para o método getPcustcode(). A melhor maneira de fazer isso é abrir a visualização Estrutura de Tópicos e rolar para baixo até localizar o método desejado.
      • Na área de comentário do método, inclua a tag @type-descriptor.recognition-desc pattern="PREC" ou use a assistência de conteúdo pressionando CTRL-espaço, navegue para a lista para localizar a tag e insira "PREC" como padrão.
      • Salve as mudanças e o código PrefCust.java é regenerado.
      • Navegue para o método de correspondência para assegurar que a mudança esteja lá:
        /**
        	 * @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);
        	}

    2. Para incluir o padrão de reconhecimento para RegCust:
      • Abra o arquivo RegCust.java em um editor Java.
      • Navegue para o método getRcustcode(). Novamente, a melhor maneira de se fazer isso é abrir a visualização Estrutura de Tópicos e rolar para baixo até localizar o método desejado.
      • Na área de comentário do método, inclua a tag @type-descriptor.recognition-desc pattern="REGC" ou use a assistência de conteúdo pressionando CTRL-espaço, navegue para a lista para localizar tag e insira "REGC" como padrão.
      • Salve as mudanças e o código RegCust.java é regenerado.
      • Navegue para o método correspondente para se certificar de que a mudança está lá:
        /**
        	 * @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);
        	}
    3. Para incluir o padrão de reconhecimento para BadCust:
      • Abra o arquivo BadCust.java em um editor Java.
      • Navegue para o método getBcustcode(). Novamente, a melhor maneira de se fazer isso é abrir a visualização Estrutura de Tópicos e rolar para baixo até localizar o método desejado.
      • Na área de comentário do método, inclua a tag @type-descriptor.recognition-desc pattern="BADC" ou use a assistência de conteúdo pressionando CTRL-espaço, navegue para a lista para localizar tag e insira "BADC" como padrão.
      • Salve as mudanças e o código BadCust.java é regenerado.
      • Navegue para o método correspondente para se certificar de que a mudança está lá:
        /**
        	 * @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 (!("BADC".equals(getBcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}
< Anterior | Próximo >

Feedback