Criando um Datasource MySQL no GlassFish

Objetivo

Esta dica é para a configuração de um datasource MySQL no GlassFish.

Os datasources são especialmente úteis quando se pretende criar uma aplicação que deixa a cargo do servidor de aplicações o gerenciamento dos recursos de conexão, podendo contar, por exemplo, com pools de conexão.

Apresentarei como criar e configurar um pool de conexões, e como referenciar o mesmo em um arquivo persistence.xml, para uma aplicação que utiliza a JPA.

Criando o Pool de Conexões

A primeira coisa a fazer é criar um pool de conexões para um banco de dados MySQL. Aqui vamos assumir um banco de dados chamado “agenda1” localizado na mesma máquina que o GlassFish (localhost).

Acesse o console de administração do GlassFish e encontre o menu “Resources”:

Nele há o nó JDBC, e abaixo dele os itens JDBC Resources e Connection Pools.  Vamos acessar primeiramente o item Connection Pools.

Ao clicar neste item será apresentada uma relação dos pools de conexão já criados, e uma opção para cadastrar um novo pool. Escola a opção para cadastrar o novo pool. Uma nova tela será aberta:

Na tela que é apresentada, informe o nome desejado para o pool, o tipo de pool (deve ser ConnectionPoolDataSource) que está sendo criado e o banco de dados destino.

Ao clicar para continuar, uma nova tela será apresentada para a configuração dos detalhes do pool de conexões. Dentre todas as configurações, as mais importantes no momento são as seguintes:

Apesar de não estar preenchido, ainda, é obrigatório informar o nome do banco de dados e a senha para a conexão.

É muito importante que os campos Url e URL estejam igualmente configurados, com o nome do bando de dados ao final da URL.

Após preenchidas as configurações, confirme a criação do pool de conexões. A tela inicial do nó Connection Pools deve apresentar a configuração que você acabou de criar:

Clique sobre ela, para selecioná-la. Na tela que se abre é possível testar a conexão, clicando sobre o botão “Ping”:

Depois de configurar o pool de conexões é preciso criar um recurso JDBC com ele. Acesse o nó “JDBC Resources”. Selecione a opção para criar um novo recurso, e na tela que se abre, escolha um nome para o novo recurso e indique que este recurso é referente ao pool que acabamos de criar:

Depois de confirmar, o recurso aparecerá listado dentre os demais:

Agora, na aplicação que utiliza JPA e será publicada neste servidor, basta referenciar o recurso JDBC no persistence.xml:

Está dada a dica!