Artigos relacionados:

Como criar um projeto J2EE no JBoss Tools

Como criar um projeto WEB com suporte ao CDI, JSF e Primefaces no JBoss Tools

 

Para criar um módulo EJB com suporte a CDI e JPA e adicioná-lo a um projeto enterprise criado previamente, siga os seguintes passos:

 

  1. Na barra de ferramentas clique em File->New->EJB Project
  2. Dê um nome ao projeto, por exemplo, Tutorial-ejb e marque para adicioná-lo como módulo de um projeto enterprise (se você seguiu este tutorial para criar um projeto J2EE, adicione o módulo EJB ao projeto TutorialEE)
  3. Clique em Next duas vezes
  4. Desmarque a opção Create an EJB Client JAR module to hold the client interfaces and classes e marque a opção Generate ejb-jar.xml deployment descriptor

 

Adicionar Facets

O projeto terá sido criado, porém ainda não suportará JPA nem CDI. Para isso siga os seguintes passos:


  1. Clique com o botão direito do mouse sobre o projeto EJB e acesse as propriedades do projeto (properties)
  2. No campo de texto na parte de cima da janela que foi aberta digite facet e clique em Project Facets
  3. Marque as opções JPA e CDI
  4. Clique em Apply (neste momento serão criados os arquivos persistence.xml e beans.xml)

 

Engenharia Reversa JPA (tabelas -> entidades)

O JBoss Tools é capaz de mapear todas as tabelas do seu banco de dados e gerar automaticamente todas as entidades de persistência. Para isso siga os seguintes passos:

 

Passos:

  1. Utilize o atalho ctrl+3 do Eclipse, digite tables no campo que aparecer e selecione JPA Entities From Tables
    1. Neste momento será necessário criar uma conexão com o banco de dados, portanto clique no botão Add conections (ao lado do combo box)

    2. Selecione Oracle (no meu caso), dê um nome qualquer para a conexão e clique em next
    3. Na próxima tela adicione o driver jdbc da oracle clicando no botão New driver definition (ao lado do combo box)
      1. Selecione o Oracle Thin Driver 11

      2. Vá para a aba Jar List e exclua o ojdbc14.jar da lista
      3. Clique em Adicionar jar/zip e selecione o driver ojdbc6.jar que está na sua máquina
      4. Na aba properties modifique a Connection URL (que segue o modelo jdbc:oracle:thin:@ip:porta:sid no caso do dese), preencha o Database Name, digite a senha em password e o nome do usuário em User ID
      5. Clique em OK
    4. Marque save_password (opcional) e clique em Test Conection para verificar se está tudo correto
    5. Caso ocorra algum erro verifique novamente suas configurações de conexão, caso contrário clique em Finish
  2. De volta à tela para gerar as entidades selecione o schema que possui as tabelas desejadas
  3. Selecione as tabelas desejadas ou clique nos botões ao lado para selecionar ou desmarcar todas elas
  4. Clique em Next duas vezes
  5. Na próxima tela preencha o pacote de destino
  6. Marque a opção Always generate optional JPA annotations and DDL parameters
  7. É possível selecionar em Collection properties type se você que que o retorno das buscas venha como Set ou List
  8. Clique em Next e depois em Finish

 

Após serem criadas, as entidades podem apontar alguns erros. Por exemplo, no caso de views será necessário anotar algum(ns) campos como ID. No caso de projetos que referenciam entidades de diversos schemas será necessário adicionar schema="nome_do_schema" na anotação Table das entidades (recomendável para qualquer projeto)

 

Criar Session Beans (Facades)

Os session beans contêm os métodos que realizam as operações de persistência, utilizando JPA, além de fornecer outros serviços que podem ser acessados por diversos outros projetos. Para criar um session bean, siga os passos abaixo:

 

  1. Use o atalho ctrl+3 e digite session e selecione Session Bean (EJB 3.x) – Create new EJB session bean
  2. Preencha o nome do pacote e marque para gerar a interface local
  3. Dê um nome ao facade
  4. Clique em Next e Finish
  5. Adicione a anotação @Named para transformá-lo em um CDI bean
  6. Ao implementar os métodos adicione a anotação @Override a eles, desse modo o eclipse fornecerá a opção de adicioná-los automaticamente à sua interface local

 

Após os passos executados acima, o projeto EJB estará pronto para ser utilizado.

 

Em breve será disponibilizado um vídeo que demonstra os passos descritos acima para criar um projeto EJB.