JBoss AS 7 + MySQL
Friday, 29. July 2011
Se você quer rodar sua aplicação no JBoss AS 7 e quer usar MySQL você precisa seguir alguns poucos passos.
Por exemplo, no persistence.xml você configura sua persistence-unit assim:
<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0"> <persistence-unit name="imobiliaria" transaction-type="JTA"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/imobiliaria</jta-data-source> <properties> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="false" /> <property name="hibernate.hbm2ddl.auto" value="create-drop" /> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" /> </properties> </persistence-unit> </persistence>
Sendo assim, com apenas um persistence-unit você não precisa configurar seu @PersistenceContext, ficando assim:
@PersistenceContext EntityManager entityManager;
Caso você tenha mais de um persistence-unit em seu persistence.xml, você deverá usá-lo dessa forma:
@PersistenceContext(name="meu_persistence_unit_name") EntityManager entityManager;
Além disso, também é necessário colocar o Driver como módulo pro JBoss AS 7.
Dentro da pasta onde você instalou o JBoss AS 7, existe a pasta “modules”, dentro dela existe a pasta “com”, dentro dela você criará a pasta “mysql”, e dentro dela, a pasta “main”.
Dentro da pasta main, você criará um arquivo chamado “module.xml” com o conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-5.1.17-bin.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
Onde em path=”mysql-connector-java-5.1.17-bin.jar” será o nome do seu mysql-connector. Este arquivo também deverá estar dentro da pasta: “modules/mysql/main”
Por fim, basta configurar o arquivo standalone.xml que está na pasta “jboss/standalone/configuration” adicionando o seu datasource, como abaixo:
<datasource jndi-name="java:/imobiliaria" pool-name="imobiliaria" enabled="true" jta="true" use-java-context="true" use-ccm="true">
<connection-url>
jdbc:mysql://localhost/imobiliaria
</connection-url>
<driver>
com.mysql
</driver>
<security>
<user-name>
root
</user-name>
<password>
</password>
</security>
</datasource>
E adicionar o driver dentro do nó <drivers>:
<driver name="com.mysql" module="com.mysql">
<xa-datasource-class>
com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
</xa-datasource-class>
</driver>
Como podem ver, é bem tranquilo. Segue abaixo um link relacionado ao assunto:
http://kousikraj.wordpress.com/tag/jboss-as-7-server-adapter-for-eclipse/ <- Instalando o adaptador do JBoss 7 no Eclipse