Configurando o DataSource do PostgreSQL no WildFly

Olá meus amiguinhos, faz um bom tempo que não passo por aqui, e para matar a saudade vou mostrar para vocês como configurar o DataSource no nem tão novo novo servidor de aplicação JavaEE 7 da RedHat, o WildFly 8.  Let’s bora então moçada linda do meu Brasil Baronil 😀

Para conseguir seguir este tutorial, antes você deve vai precisar (like Vovó Palmirinha) de:

Com tudo instalado e redondinho, vamos iniciar o servidor, para isto, vá até a pasta onde está o WildFly, e entre no diretório {WildFly.Home}/bin, e usando o console execute o comando: sh standalone.sh

ATENÇÃO:  TODOS OS COMANDOS  QUE PASSAR AQUI SÃO PARA SER EXECUTADOS EM SISTEMAS OPERACIONAIS UNIX E NÃO PARA SISTEMAS WINDOWS!!!!

Após o servidor ter iniciado, entre com o endereço no browser: “http://localhost:9990/console/“.

Acesse a página Runtime:

Caso ele peça um usuário e senha será necessário criar um, para isto entre no diretório {WildFly.Home}/bin, e execute o comando sh add-user.sh e siga as instruções colocando usuário e senha! Caso tenha dúvidas veja as instruções do docs da JBoss.

Feito isso, reinicie o servidor e acesse o painel de administrador e acesse no menu esquerdo: Status -> Subsystems -> Datasources:

Já no corpo da página, você provavelmente verá está tela, com apenas o ExempleDS configurado, já que ainda não configuramos nenhum Datasource, existem duas maneiras de configura-lo, usando o console que acabamos de acessar ou editando os arquivos XML do servidor de Aplicação, neste post vou aborda a solução com XML, o segundo modo pretendo fazer um post futuramente ensinando configurar da outra maneira:

Vamos então colocar a mão na massa 😉

A primeira coisa a fazer, é inserir o arquivo jar JDBC que fizemos o download dentro do diretório:

{WildFly.Home}/modules/system/layers/base/org/postgresql/main/

Caso não tenha alguns diretórios, basta criá-los na mão mesmo. Feito isto, coloque o seu  jar JDBC dentro do diretório, e crie um arquivo chamado module.xml, e edite com o seguinte conteudo, lembrando de colocar o a linha <resource-root path=“postgresql-9.3-1102.jdbc41.jar”/> para o nome completo do arquivo JDBC que você baixou do site do PostgreSQL:

Feito os passos de cima, edite o arquivo standalone.xml, que se encontra em:

{WildFly.Home}/standalone/configuration/

Entre as TAGs <datasources></datasources>, coloque o sequinte trecho:

Alterando a <connection-url><connection-url>, para a sua conexão com o Banco de Dados PostgreSQL. Além de mudar <user-name></user-name> e <password></password> inserindo respectivamente seu usuário e senha.

 O próximo e ultimo passo para a configuração é inserir o seguinte trecho entre as TAGs <drivers> .  .  . </drivers> ainda dentro de datasources:

Se você chegou aqui, agora basta reiniciar seu servidor, e acessar os Datasources no painel do WildFly. Provavelmente você verá o Datasource que acabamos de criar, para testar, basta clicar sobre o Datasource que criamos e depois no botão Test Connection e ver a mágica acontecer.

Bom galera era isso, espero ter ajudado vocês em algo, qualquer coisa é só perguntar.

Abraços e até a próxima 😀

Anúncios

12 comentários

  1. Edson · dezembro 2, 2014

    Olá Pedro, tudo bem?

    Tenho uma aplicação java que faz acesso ao AD. Gostaria de realizar a configuração LDAP que utilizo direto no AS, no meu caso o WildFly 8, isto para poder ter um controle de pool de conexão, etc.

    Procurei em alguns tutoriais e na própria documentação mas não consegui efetivar nenhum exemplo. Por favor, poderia esclarecer estes pontos:

    1- É possível criar uma conexão LDAP via console, como se fosse um dataSource ou existe alguma opção específica para este recurso?. Parece que no Glassfish é possível tanto uma conexão ao banco quanto ao LDAP via datasource.

    2- Se for possível, pode me indicar a forma mais indicada de configurar o acesso LDAP via console WildFly 8?

    Lembrando que as configurações de banco de dados via Datasource são bem simples, já uso e não tenho problemas. Entendo que não seja da mesma forma para LDAP.

    Obrigado.

  2. Pedro Henrique de Oliveira Silva · janeiro 3, 2015

    Oi amigo, desculpa a demora para responder. Então, não sabia responder, rs. Perguntei para um amigo, que trabalha na RedHat, ele disse que LDAP é feito usando LoginModules, mas ele não conhece nenhum datasource com LDAP não, nunca ouviu falar! =/ Espero ter ajudado

  3. Pingback: Aplicação Web com VRaptor 4 – Configurando persistence.xml | Pedro Hos
  4. Pingback: 05 Aplicação Web com VRaptor 4 – Configurando persistence.xml | Pedro Hos
  5. robsonbittencourt · julho 29, 2015

    Muito obrigado Pedro. Ótimo post.

    • Pedro Henrique de Oliveira Silva · julho 29, 2015

      Obrigado Robson. Bons estudos

  6. Hugo Thomaz · dezembro 6

    Ola Pedro, poderia me dar uma ajuda.
    Não consigo de forma alguma usar datasource.
    Ja fiz todas as configurações possíveis e sempre da uma mensagem de erro no eclipse falando de EntityManager mas quando uso resource-local da certo, ao contrario do jta.
    Não sei se estou esquecendo usar alguma dependência do maven
    Vc tem alguma listinha padrão das deependencias para quem vai usar :
    Jboss com Hibernate através de JTA?

  7. rafaelalbani · março 22

    Olá pedro e parabéns pelo artigo,

    Estou enfrentando um problema na hora de iniciar o server, com relação ao carregamento do driver jdbc do postgresql, o erro é o seguinte:

    [org.jboss.as.controller.management-operation] (ServerService Thread Pool — 33) WFLYCTL0013: Operation (“add”) failed – address: ([
    (“subsystem” => “datasources”),
    (“jdbc-driver” => “postgresql”)
    ]) – failure description: “WFLYJCA0041: Failed to load module for driver [org.postgresql]”

    Agradeço desde já pela ajuda.

    att,

  8. Marcos Estevam · junho 5

    Após realizar os passos mostrados em seu tutorial. Obtive o seguinte erro:
    [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation (“add”) failed – address: ([
    (“subsystem” => “datasources”),
    (“data-source” => “nfeDev”)
    ]) – failure description: {
    “WFLYCTL0412: Required services that are not installed:” => [“jboss.jdbc-driver.postgresql”],
    “WFLYCTL0180: Services with missing/unavailable dependencies” => [
    “jboss.driver-demander.java:jboss/datasources/PostgreSQLDS is missing [jboss.jdbc-driver.postgresql]”,
    “org.wildfly.data-source.nfeDev is missing [jboss.jdbc-driver.postgresql]”
    ]
    }

  9. Jorge Maia · junho 14

    Como seria essa mesma configuração para o WildFly 10? Muda alguma coisa?

    • Pedro Henrique de Oliveira Silva · junho 14

      Jorge, acredito que seria a mesma coisa. Obrigado

    • Pedro Henrique de Oliveira Silva · 30 dias atrás

      Não deve mudar nada Jorge.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s