Obrigado pelo tutorial, mesmo assim preciso de ajuda
Fiz a configuração como vi em um tutorial, da seguinte forma:
[color=#444444]PERSISTENCE.XML dentro de META-INF:[/color][color=red] [/color]
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" 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">
<persistence-unit name="SiamDS" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>java:/SiamDS</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>
[color=red] Configuração do DATASOURCE E DO DRIVER NO STANDALONE.XML DO JBOSS 7 :[/color]
<datasource jndi-name="SiamDS" pool-name="SiamDS" enabled="true" jta="true" use-java-context="true" use-ccm="true">
<connection-url>
jdbc:mysql://localhost:3306/siam
</connection-url>
<driver>
com.mysql
</driver>
<transaction-isolation>
TRANSACTION_READ_COMMITTED
</transaction-isolation>
<pool>
<min-pool-size>
10
</min-pool-size>
<max-pool-size>
100
</max-pool-size>
<prefill>
true
</prefill>
<use-strict-min>
false
</use-strict-min>
<flush-strategy>
FailingConnectionOnly
</flush-strategy>
</pool>
<security>
<user-name>
root
</user-name>
<password>
123
</password>
</security>
<statement>
<prepared-statement-cache-size>
32
</prepared-statement-cache-size>
<share-prepared-statements/>
</statement>
</datasource>
<drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>
org.h2.jdbcx.JdbcDataSource
</xa-datasource-class>
</driver>
<driver name="com.mysql" module="com.mysql">
<xa-datasource-class>
com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
</xa-datasource-class>
</driver>
</drivers>
[color=red]
e dentro de[b] jboss-as-web-7.0.2.Final\modules\com\mysql\main
adicionei o MYSQL CONNECTOR , e um arquivo MODULE.XML, da seguinte forma:[/color]
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ JBoss copyrights
~ http://community.jboss.org/wiki/DataSourceConfigurationInAS7
-->
<module xmlns="urn:jboss:module:1.0" name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-5.1.21-bin.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
Ao subir o servidor dá o seguinte erro no console:
[color=red] 12:14:57,789 INFO [org.jboss.as.jpa] (MSC service thread 1-1) added javax.persistence.api, javaee.api, org.jboss.as.jpa, org.javassist dependencies to WEB.war
12:14:57,898 INFO [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-3) JNDI bindings for session bean named PessoaRepository in deployment unit deployment "WEB.war" are as follows:
java:global/WEB/PessoaRepository!repository.PessoaRepository
java:app/WEB/PessoaRepository!repository.PessoaRepository
java:module/PessoaRepository!repository.PessoaRepository
java:global/WEB/PessoaRepository
java:app/WEB/PessoaRepository
java:module/PessoaRepository
12:14:57,947 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: Failed to start service jboss.deployment.unit."WEB.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."WEB.war".INSTALL: Failed to process phase INSTALL of deployment "WEB.war"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [:1.7.0_01]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [:1.7.0_01]
at java.lang.Thread.run(Unknown Source) [:1.7.0_01]
Caused by: java.lang.RuntimeException: Could not get class configuration for repository.repository due to the following errors: Can't find a deployment unit named null at deployment "WEB.war"
at org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:130)
at org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:122)
at org.jboss.as.ee.component.LazyValue.get(LazyValue.java:40)
at org.jboss.as.ee.component.EEApplicationDescription.getClassConfiguration(EEApplicationDescription.java:183)
at org.jboss.as.ee.component.ClassDescriptionTraversal.run(ClassDescriptionTraversal.java:45)
at org.jboss.as.ee.component.ComponentDescription$DefaultFirstConfigurator.configure(ComponentDescription.java:570)
at org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:72)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
... 5 more
12:14:58,156 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 1) Deployment of "WEB.war" was rolled back with failure message {"Failed services" => {"jboss.deployment.unit.\"WEB.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"WEB.war\".INSTALL: Failed to process phase INSTALL of deployment \"WEB.war\""},"Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.WEB.WEB.ValidatorFactory missing [ jboss.naming.context.java.module.WEB.WEB ]","jboss.naming.context.java.module.WEB.WEB.Validator missing [ jboss.naming.context.java.module.WEB.WEB ]"]}
12:14:58,162 INFO [org.jboss.as.server.deployment] (MSC service thread 1-1) Stopped deployment WEB.war in 7ms
12:14:58,165 ERROR [org.jboss.as.deployment] (DeploymentScanner-threads - 2) {"Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"Failed services" => {"jboss.deployment.unit.\"WEB.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"WEB.war\".INSTALL: Failed to process phase INSTALL of deployment \"WEB.war\""},"Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.WEB.WEB.ValidatorFactory missing [ jboss.naming.context.java.module.WEB.WEB ]","jboss.naming.context.java.module.WEB.WEB.Validator missing [ jboss.naming.context.java.module.WEB.WEB ]"]}}}
[/color]
TESTE REALIZADO:
package repository;
import javax.ejb.Stateless;
import entity.Pessoa;
@Stateless
public class PessoaRepository extends repository {
public void salva(){
getEntityManager().persist(new Pessoa());
}
}
package repository;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
public abstract class repository {
@PersistenceContext(name="SiamDS")
EntityManager entityManager;
protected EntityManager getEntityManager() {
return entityManager;
}
}
To quebrando a cabeça para fazer essa conexão, acredito que possa ser um detalhe ou um (grande)vacilo visivel para alguem que saiba ...
:? :(
Agradeço!