Exercício-Programa 3: Utilização de EJB3 e JPA
Sistemas de Middleware - Segundo Semestre de 2007
Usando a arquitetura EJB3/JPA, desenvolva um protótipo de sistema de
matrículas para uma instituição de ensino.
O fato de um aluno estar matriculado numa disciplina é expresso por um
relacionamento entre o aluno e o oferecimento da disciplina. Esse
relacionamento é do tipo ``muitos para muitos'', ou seja, pode haver
mais de um aluno matriculado numa disciplina (é bom que haja mesmo!),
e um aluno pode estar matriculado em mais de uma disciplina.
- Crie pelo menos duas entidades JPA: "aluno" e "oferecimento de
disciplina". Implemente um relacionamento bidirecional entre
entre alunos e oferecimentos de disciplinas.
- Crie pelo menos um componente session bean para o
"processo de matrícula". O cliente que quiser fazer uma
matrícula interage com esse componente EJB3, que cuida de
estabelecer a associação entre um aluno e um ou mais oferecimentos
de disciplinas.
- Crie pelo menos uma aplicação cliente remota. Esta aplicação deve
ser um cliente web que obtém do usuário todas as informações
necessárias para matricular um aluno num conjunto de disciplinas e
chama um session bean para efetuar as matrículas. O
cliente web pode ser implementado usando servlets, JSP ou
JSF.
Entidades JPA não são acessíveis a clientes remotos. Por esse motivo,
todo acesso remoto a uma entidade deve ser mediado por algum
session bean implantado no mesmo servidor de aplicações. Os
session bean recebem chamadas remotas dos clientes e fazem
chamadas locais às entidades JPA. Esse arranjo corresponde ao padrão de
projeto conhecido como "sessão de fachada". Ele tem o objetivo de
minimizar o número chamadas remotas e o tráfego de dados entre o cliente
e o servidor de aplicações.
O sistema deve ser implementado em Java e rodar no
JBoss Application Server,
versão 4.2.1.GA ou 4.2.2.GA.
Bom trabalho!
Last modified: Sun Nov 18 14:14:32 BRST 2007