22
Internet no OS/390 Internet no OS/390 Arquitetura do Sistema Arquitetura do Sistema para a Marinha Mercante para a Marinha Mercante

Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Embed Size (px)

Citation preview

Page 1: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Internet no OS/390Internet no OS/390

Arquitetura do Sistema Arquitetura do Sistema para a Marinha Mercantepara a Marinha Mercante

Page 2: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Sumário

• Premissas para o Desenvolvimento• Objetivos & Requisitos Iniciais• Sistema de Controle do AFRMM - Componentes• Tecnologias Utilizadas• Arquitetura Física em 3 Camadas (Acesso Browser)• Java Server Pages & HTML• Servlets/API e CICSGateway• CICS Transaction Gateway• Arquitetura Física em 3 Camadas (Acionamento Remoto de Métodos - RMI)

Page 3: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Premissas para o DesenvolvimentoPremissas para o Desenvolvimento • Efetuar transição para a Tecnologia

Internet de forma suave utilizando arquitetura baseada em objetos;

• Aproveitar conhecimento CICS/NATURAL

• Manter a lógica de negócio ainda no ambiente CICS/NATURAL em Servidor de Aplicação isolado do Servidor Internet.

Projeto Marinha Mercante

Page 4: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Objetivo: “Desenvolvimento e implantação de sistema para controle do pagamento do adicional de frete para a renovação da Marinha Mercante”.

Requisitos do Sistema:• Acesso Internet/Intranet via “Browser” • Alta disponibilidade• Tempo de resposta < 2s (Intranet)

Projeto Marinha Mercante

Page 5: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Sistema de Controle do AFRMM - Sistema de Controle do AFRMM - ComponentesComponentes

• Manifesto (Aplicação JAVA “Offline”, com

transferência de arquivos)

• Conhecimento de Embarque (Idem com

acertos via Browser)

• Suspensão/Isenção (Browser)

• Consignatários (Browser)

• Tabelas (Browser)

• Relatórios (Browser)

Projeto Marinha Mercante

Page 6: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Módulo Tabelas: Módulo Tabelas: • Acondicionamento Associação de Empresas

• Afretamento Área Geográfica

• Agência de Navegação Componente do Frete

• Embarcação da Associação Embarcação em Construção

• Embarcação Empresa de Navegação

• Estaleiro Índice Selic

• Isenção/Suspensão Modalidade BNDES

• Moeda Motivo da Restituição

• Mercadoria Nvocc

• País Partilha Especial

• Parâmetros Porto

• Percentual de Partilha Tabela SERARR

• Tipo de Afretamento Tipo de Embarcação

• Terminal Portuário Tipo de Tráfego

• Valor da Ufir

29 Tabelas: 29 Servlets, 29 Java Beans, 147 Páginas HTML e 156 JSP’s

Projeto Marinha Mercante

Page 7: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Próximos Passos : Próximos Passos :

• Implantação do Módulo Tabelas: 18/08/2000

• Desenvolvimento e Implantação Dos Módulos (Até Out/2000):

– Cadastramento do Consignatário e Representante Legal

– Manifesto/Conhecimento de Embarque– Suspensão/Isenção– Pagamento e Controle do AFRMM– Relatórios

Projeto Marinha Mercante

Page 8: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Tecnologias UtilizadasTecnologias Utilizadas

• Visual Age for JAVA 3.0, Enterprise Edition

• Websphere Application Server 1.2, Standard Edition

• IBM HTTP Server, Version 5.1• CICS Transaction Gateway, Version

3.1• CICS/TS 1.3

Page 9: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Arquitetura Física em 3 Arquitetura Física em 3 Camadas (Parte Online)Camadas (Parte Online)

Browser

H

T

M

L

OS/390 V2R7 - LPAR WEB

Web Server/

AppServer/JVM

CICS Transaction Gateway

CICS

Gateway

For

JAVA

OS/390

V2R4

Siscomex

CICS 4.1

NATURAL

HTTP

HTTPS

XCF

JSP/Servlets / API

CICS/TS

Server

PGM

Server

Banco

ADABAS

CICS

Senha-Rede

EXCI

CICSGateway

Page 10: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

JAVA JAVA ServerServer Pages & Pages & HTMLHTML

• Utilização de JSP (script) e HTML de forma conjunta para geração de páginas WEB dinâmicas.

• HTML usado somente para apresentação de informação geralmente estática.

• JSP utilizado para gerar a parte dinâmica das páginas WEB, permitindo remover páginas HTML do código dos Servlets.

Page 11: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

JSP/HTML - Exemplo de CódigoJSP/HTML - Exemplo de Código

• <!-- Projeto Marinha Mercante - JSP de Retorno de Erro --> • <html> • <body bgcolor="#FFFFFF" background="../../images/frame03_back.gif">• <BEAN NAME="acondi" TYPE="tabelas.acondi.AcondiBean" INTROSPECT="NO" CREATE="NO"

SCOPE="REQUEST">• </BEAN> • • <% • java.lang.String retorno = acondi.getRetornoPrograma(); • java.lang.String retNat = (String) acondi.getRetornoNatural(); • java.lang.String retCics = (String) acondi.getRetornoCICS(); • if (!(retNat.equals("99") && retCics.equals("0"))){ • %> • • <table border=0> • <tr align="center"> • <td><p align="center"><strong>Erro na execução do comando solicitado. Codigo de erro: <%=

retCics %>X<%= retNat %• </tr> • </table>

Page 12: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Arquitetura Física em 3 Arquitetura Física em 3 Camadas (Parte Online)Camadas (Parte Online)

Browser

H

T

M

L

OS/390 V2R7 - LPAR WEB

Web Server/

AppServer/JVM

CICS Transaction Gateway

CICS

Gateway

For

JAVA

OS/390

V2R4

Siscomex

CICS 4.1

NATURAL

HTTP

HTTPS

XCF

JSP/Servlets / API

CICS/TS

Server

PGM

Server

Banco

ADABAS

CICS

Senha-Rede

EXCI

CICSGateway

Page 13: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Servlets, CICSGateway & Servlets, CICSGateway & CICS TRANS GW(CTG)CICS TRANS GW(CTG)

• A classe CICSGateway fornece interface comum

entre Servlets e as classes do CTG;

• Servlets são utilizados para coletar dados das

páginas em JSP e formatar os dados para serem

passados a transações NATURAL no Servidor de

Aplicações.

• Utilizam a classe CICSGateway, que através do CTG

faz chamadas “ECI” ao Pgm Server no CICS/TS, que

aciona o NATURAL nos CICS do ambiente desejado.

Page 14: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

CICS/TS: ECI CICS/TS: ECI • ECI = External Call Interface

• ECI permite que aplicações não-CICS possam

acionar transações CICS sincronamente ou

assincronamente, como uma subrotina;

• Chamadas (Call) tipo ECI permitem que dados

sejam trocados com o CICS via “commarea”;

• ECI separa a lógica de apresentação da lógica de

negócio, que fica na aplicação CICS, fornecendo

mais flexibilidade para a aplicação.

Page 15: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

IBM CICS Transaction IBM CICS Transaction GatewayGateway

• Fornece acesso fácil e seguro a aplicações (transações) CICS que são executadas em CICS/TS;

• Contém o “CICS Gateway for Java-CTG” e o “CICS Universal Client”;

• O CTG recebe “requests” ECI e dados da aplicação cliente em JAVA e passa os dados ao CICS/TS;

• Quando o processamento termina o CICS retorna os dados de volta ao CTG;

• O CTG por sua vez retorna os dados de volta a aplicação cliente.

Page 16: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Servlets/CICSGateway - ExemploServlets/CICSGateway - Exemplo

• private java.util.Vector chamaNatural(String parParametros, String cpf, String programa) {

• java.util.Vector retorno = new java.util.Vector();

• Resposta resp;

• String retAux = "";

• Utilitarios Util..= new Utilitarios(); • if (!cpf.substring(0,1).equals("C")){ • parParametros = cpf + "0000000000000000" + parParametros; • } else { • cpf = cpf.substring(1, cpf.length()); • }

• parParametros = Util.preencheBrancosDireita(parParametros, 500);

• CICSGateway comNatural = new CICSGateway(); • resp = comNatural.callNat("G36127", programa, parParametros, cpf);

• retAux = resp.getParametros();

• • if (retAux == null){ • retAux = ""; • } • String rcNatural = String.valueOf(resp.getResultadoNatural()); • String rcCICS. = String.valueOf(resp.getResultadoCics());• ....................................................................................• ....................................................................................

Page 17: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Arquitetura Física em 3 Arquitetura Física em 3 Camadas (Parte Online)Camadas (Parte Online)

Browser

H

T

M

L

OS/390 V2R7 - LPAR WEB

Web Server/

AppServer/JVM

CICS Transaction Gateway

CICS

Gateway

For

JAVA

OS/390

V2R4

Siscomex

CICS 4.1

NATURAL

HTTP

HTTPS

XCF

JSP/Servlets / API

CICS/TS

Server

PGM

Server

Banco

ADABAS

CICS

Senha-Rede

EXCI

CICSGateway

Page 18: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

CICS PGM ServerCICS PGM Server• Coordena a interface entre a camada

intermediária e o ambiente MVS Produção:– Coleta e armazena dados recebidos na

CommArea; – Inicia Aplicações NATURAL passando os

dados recebidos (via Temporary Storage); – Recebe resultado enviado pelas aplicações

NATURAL; – Registra em arquivo LOG as transações

acionadas, com identificação do chamador (inclui CPF) e eventuais erros ocorridos;

– Retorna resultados para a aplicação JAVA cliente.

Page 19: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

CICS PGM Server (cont.)CICS PGM Server (cont.)• Coordena a interface entre a camada

intermediária e o Senha-Rede:– Formata CommArea para chamada ao Senha-

Rede;– Executa LOGON no Senha-Rede via chamada

ao programa O00932ZO em protocolo LU6.2; – Retorna a aplicação cliente JAVA os dados

recebidos do Senha-Rede ou código de erro; – Efetua LOGOFF no Senha-Rede via chamada

ao programa O00932ZO.

Page 20: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Arquitetura Física em 3 Arquitetura Física em 3 Camadas (Parte Offline)Camadas (Parte Offline)

Micro

P

g

m

.

J

A

V

A

OS/390 V2R7 - LPAR WEB

UNIX System

Services

CICS Transaction Gateway

CICS

Gateway

For

JAVA

OS/390

V2R4

Siscomex

CICS 4.1

NATURAL

RMI

XCF

RMI Server

CICS/TS

Server

PGM

Server

Banco

ADABAS

CICS

Senha-Rede

EXCI

Page 21: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Arquitetura do Componente RMI Arquitetura do Componente RMI (Genérico)(Genérico)

Micro (Cliente)

Classes do Usuário

Host (Servidor)Classes do Usuário

RMI

RMI Server

SerproRMIGateway VectorcallRMI(Vector

)

RMISerpro

VectormetodoRMI(Vector)

rmiregistry

Page 22: Internet no OS/390 Arquitetura do Sistema para a Marinha Mercante

Internet no OS/390Internet no OS/390

Questões ??Questões ??