-
Java
Integração entre Sistemas de Pagamentos
Avaliação da Disciplina: Integração Java
Christiny Goulart
Fabio Martins
Robson Martins
Prof. Samuel Lima
MBA em Desenvolvimento de Aplicações Java - SOA / FIAP
08/09/2011
Download do código-fonte:
Integração entre Sistemas de Pagamentos (ZIP ~11KB)
Tecnologias empregadas:
- ActiveMQ;
- JavaMail
Enunciado:
Integração entre duas aplicações utilizando JMS e JavaMail
Objetivo:
Construir uma integração pseudo-síncrona entre duas aplicações de negócio utilizando mensageria (JMS / MQ).
- Aluno A: Deverá construir a parte cliente da integração, enviando uma requisição e aguardando uma resposta.
- Aluno B: Deverá construir a parte servidora da integração, recebendo uma requisição, processando-a, enviando um e-mail e devolvendo uma mensagem de resposta.
Aluno A e aluno B deverão descrever o cenário de negócio e estabelecer um protocolo de mensagem de requisição e resposta (preferencialmente em formato XML).
Entregas:
Cada aluno deverá entregar um arquivo TXT contendo a descrição do cenário de negócio, o nome e a matrícula do aluno parceiro, o layout das mensagens de requisição e resposta, e um arquivo contendo o código fonte do programa que construiu.
Critérios para avaliação:
Subjetivo, baseado na comprovação do domínio do conhecimento da matéria dada e exercícios realizados em sala de aula. Parse e tratamento adequado das mensagens XML e aderência da implementação a um cenário real de integração serão diferenciais.
Layout da Mensagem:
A mensagem será um objeto que implementa a interface a seguir:
package br.com.fiap.pagamentos.producer;
import java.util.Date;
public interface InterfacePagamentos {
//Buscar o nome do usuário
public String getNome();
//Grava o nome do usuário
public void setNome(String nome);
//Busca número do cartão do usuário
public int getNuCartao();
//Grava o número do cartão do usuário
public void setNuCartao(int nuCartao);
//Busca a validade do cartão do usuário
public Date getValidade();
//Grava a validade do cartão do usuário
public void setValidade(Date validade);
//Buscar o valor do gasto feito pelo usuário
public int getValor();
//Grava o valor do gasto feito pelo usuário
public void setValor(int valor);
//Busca o status da compra (Aprovado ou Negado)
public String getStatus();
//Grava o status da compra (Aprovado ou Negado)
public void setStatus(String status);
}
Descrição de Cenário:
Pagamentos com cartões de créditos.
O usuário ao passar o cartão de crédito (Máquina do Fabio), entrará em contato com o servidor (Máquina da Christiny) e o listener (Máquina do Robson), consumirá as mensagens, processará, retornará a resposta e notificará via email o usuário.
O Servidor de emails está na máquina da Christiny.
Tendo como regra de negócio a aprovação de compra com valor abaixo de 100 e reprovação com valor acima de 100.
Máquinas:
- 10.1.25.6 - Fabio
- 10.1.25.7 - Christiny
- 10.1.25.8 - Robson