javax.naming.NameNotFoundException: TransactionManager not bound
huggivig Oct 21, 2010 10:31 AMThe problem was link link to another depoyement problem.... (message driven bean not depoyed)
I migrate an application from Jboss 4.0.5 GA to Jboss 5.0.1 GA and I have got this exception when executing my application.
Strangely, TransactionManager is not bound (I can’t see it in JNDIView) when my application is deployed, and it’s bound when my application is not deployed.
Ds.xml :
<datasources>
<local-tx-datasource>
<jndi-name>jdbc/XYZ</jndi-name>
<rar-name>jboss-local-jdbc.rar</rar-name>
<use-java-context>false</use-java-context>
<connection-definition>javax.sql.DataSource</connection-definition>
<jmx-invoker-name>jboss:service=invoker,type=jrmp</jmx-invoker-name>
<min-pool-size>0</min-pool-size>
<max-pool-size>10</max-pool-size>
<blocking-timeout-millis>30000</blocking-timeout-millis>
<idle-timeout-minutes>30</idle-timeout-minutes>
<prefill>false</prefill>
<background-validation>false</background-validation>
<background-validation-millis>0</background-validation-millis>
<validate-on-match>true</validate-on-match>
<statistics-formatter>org.jboss.resource.statistic.pool.JBossDefaultSubPoolStatisticFormatter</statistics-formatter>
<isSameRM-override-value>false</isSameRM-override-value>
<allocation-retry>0</allocation-retry>
<allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
<security-domain-and-application xsi:type="securityMetaData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
<type-mapping>Oracle9i</type-mapping>
<local-transaction/>
<user-name>user</user-name>
<password>pass</password>
<check-valid-connection-sql>SELECT * FROM DUAL</check-valid-connection-sql>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
<prepared-statement-cache-size>0</prepared-statement-cache-size>
<share-prepared-statements>false</share-prepared-statements>
<set-tx-query-timeout>false</set-tx-query-timeout>
<query-timeout>0</query-timeout>
<use-try-lock>60000</use-try-lock>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<connection-url>jdbc:oracle:thin:@forfaitXX:1521:XYZ</connection-url>
</local-tx-datasource>
</datasources>
Persistence.xml :
<?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="OracleCnx_XYZ" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>jdbc/XYZ</jta-data-source>
<jar-file>base-metier.jar</jar-file>
<properties>
<property value="org.hibernate.dialect.Oracle9Dialect" />
<property name="hibernate.show_sql" value="false" />
<property name="hibernate.format_sql" value="true" />
<property name="hibernate.cache.use_query_cache" value="true" />
<property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider" />
<property value="org.hibernate.transaction.JTATransactionFactory" />
<property value="org.hibernate.transaction.JBossTransactionManagerLookup" />
<property name="jboss.entity.manager.factory.jndi.name" value="java:/entityManagerFactory" />
<property value="java:comp/UserTransaction" />
</properties>
</persistence-unit>
</persistence>
Trace :
- java: Namespace
- +- UserTransactionSessionFactory (proxy: $Proxy260 implements interface org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory)
- +- UUIDKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory)
- +- XYZ-ear (class: org.jnp.interfaces.NamingContext)
- | +- ejb (class: org.jnp.interfaces.NamingContext)
- | | +- ReplicationErrorsManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.replication.ReplicationErrorsManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.replication.ReplicationErrorsManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.replication.ReplicationErrorsManager)
- | | +- LdapManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.ldap.service.LdapManager)
- | | | +- local-fr.XYZ.base.metier.ldap.service.LdapManager (class: Proxy for: fr.XYZ.base.metier.ldap.service.LdapManager)
- | | +- TerritoiresManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.territoires.service.TerritoiresManagerLocal)
- | | | +- local-fr.XYZ.base.metier.territoires.service.TerritoiresManagerLocal (class: Proxy for: fr.XYZ.base.metier.territoires.service.TerritoiresManagerLocal)
- | | +- ContactManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.contact.service.ContactManager (class: Proxy for: fr.XYZ.base.metier.contact.service.ContactManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.contact.service.ContactManager)
- | | +- StatutManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.statut.StatutManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.statut.StatutManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.statut.StatutManager)
- | | +- DocumentsAdministratifsManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.documentsAdministratifs.DocumentsAdministratifsManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.documentsAdministratifs.DocumentsAdministratifsManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.documentsAdministratifs.DocumentsAdministratifsManager)
- | | +- ProfilManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.droits.service.ProfilManager)
- | | | +- local-fr.XYZ.base.metier.droits.service.ProfilManager (class: Proxy for: fr.XYZ.base.metier.droits.service.ProfilManager)
- | | +- StatutParametreManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.parametres.service.StatutParametreManager (class: Proxy for: fr.XYZ.base.metier.parametres.service.StatutParametreManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.parametres.service.StatutParametreManager)
- | | +- JournalManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.journal.service.JournalManager (class: Proxy for: fr.XYZ.base.metier.journal.service.JournalManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.journal.service.JournalManager)
- | | +- CandidatureParametreManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.parametres.service.CandidatureParametreManager)
- | | | +- local-fr.XYZ.base.metier.parametres.service.CandidatureParametreManager (class: Proxy for: fr.XYZ.base.metier.parametres.service.CandidatureParametreManager)
- | | +- ApplicationParametresManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.parametres.service.ApplicationParametresManager)
- | | | +- local-fr.XYZ.base.metier.parametres.service.ApplicationParametresManager (class: Proxy for: fr.XYZ.base.metier.parametres.service.ApplicationParametresManager)
- | | +- ParametresManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.contact.service.ParametresManager)
- | | | +- local-fr.XYZ.base.metier.contact.service.ParametresManager (class: Proxy for: fr.XYZ.base.metier.contact.service.ParametresManager)
- | | +- TempsManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.temps.TempsManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.temps.TempsManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.temps.TempsManager)
- | | +- CompetencesManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.competences.CompetencesManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.competences.CompetencesManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.competences.CompetencesManager)
- | | +- InseeManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.insee.InseeManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.insee.InseeManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.insee.InseeManager)
- | | +- MailerManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.mailerManager.service.MailerManager)
- | | | +- local-fr.XYZ.base.metier.mailerManager.service.MailerManager (class: Proxy for: fr.XYZ.base.metier.mailerManager.service.MailerManager)
- | | +- EmploisManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.emplois.EmploisManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.emplois.EmploisManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.emplois.EmploisManager)
- | | +- VersionsManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.versions.service.VersionsManager (class: Proxy for: fr.XYZ.base.metier.versions.service.VersionsManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.versions.service.VersionsManager)
- | | +- AnnuaireManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local-fr.XYZ.base.metier.contact.service.AnnuaireManager (class: Proxy for: fr.XYZ.base.metier.contact.service.AnnuaireManager)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.contact.service.AnnuaireManager)
- | | +- GatewayManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.gateway.service.GatewayManager)
- | | | +- local-fr.XYZ.base.metier.gateway.service.GatewayManager (class: Proxy for: fr.XYZ.base.metier.gateway.service.GatewayManager)
- | | +- OrganisationManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.organisation.OrganisationManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.organisation.OrganisationManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.organisation.OrganisationManager)
- | | +- ConcoursManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.concours.ConcoursManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.concours.ConcoursManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.concours.ConcoursManager)
- | | +- XYZApplicationManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.droits.service.ApplicationManagerLocal)
- | | | +- local-fr.XYZ.base.metier.droits.service.ApplicationManagerLocal (class: Proxy for: fr.XYZ.base.metier.droits.service.ApplicationManagerLocal)
- | | +- PreventionManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.referentiel.service.prevention.PreventionManager)
- | | | +- local-fr.XYZ.base.metier.referentiel.service.prevention.PreventionManager (class: Proxy for: fr.XYZ.base.metier.referentiel.service.prevention.PreventionManager)
- | | +- TerritoireParametreManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.parametres.service.TerritoireParametreManager)
- | | | +- local-fr.XYZ.base.metier.parametres.service.TerritoireParametreManager (class: Proxy for: fr.XYZ.base.metier.parametres.service.TerritoireParametreManager)
- | | +- CompetenceParametreManagerBean (class: org.jnp.interfaces.NamingContext)
- | | | +- local (class: Proxy for: fr.XYZ.base.metier.parametres.service.CompetenceParametreManager)
- | | | +- local-fr.XYZ.base.metier.parametres.service.CompetenceParametreManager (class: Proxy for: fr.XYZ.base.metier.parametres.service.CompetenceParametreManager)
- +- SecureManagementView (class: org.jnp.interfaces.NamingContext)
- | +- remote-org.jboss.deployers.spi.management.ManagementView (class: Proxy for: org.jboss.deployers.spi.management.ManagementView)
- | +- remote (class: Proxy for: org.jboss.deployers.spi.management.ManagementView)
- +- SecureDeploymentManager (class: org.jnp.interfaces.NamingContext)
- | +- remote-org.jboss.deployers.spi.management.deploy.DeploymentManager (class: Proxy for: org.jboss.deployers.spi.management.deploy.DeploymentManager)
- | +- remote (class: Proxy for: org.jboss.deployers.spi.management.deploy.DeploymentManager)
- +- HiLoKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.hilo.HiLoKeyGeneratorFactory)
- +- XAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
- +- topic (class: org.jnp.interfaces.NamingContext)
- +- ClusteredConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
- +- ProfileService (class: org.jboss.aop.generatedproxies.AOPProxy$2)
- +- SecureProfileService (class: org.jnp.interfaces.NamingContext)
- | +- remote (class: Proxy for: org.jboss.profileservice.spi.ProfileService)
- | +- remote-org.jboss.profileservice.spi.ProfileService (class: Proxy for: org.jboss.profileservice.spi.ProfileService)
- +- queue (class: org.jnp.interfaces.NamingContext)
- | +- Message (class: org.jboss.jms.destination.JBossQueue)
- | +- DLQ (class: org.jboss.jms.destination.JBossQueue)
- | +- ExpiryQueue (class: org.jboss.jms.destination.JBossQueue)
- +- ClusteredXAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
- +- UserTransaction (class: org.jboss.tm.usertx.client.ClientUserTransaction)
- +- ConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
- +- jmx (class: org.jnp.interfaces.NamingContext)
- | +- invoker (class: org.jnp.interfaces.NamingContext)
- | | +- RMIAdaptor (proxy: $Proxy253 implements interface org.jboss.jmx.adaptor.rmi.RMIAdaptor,interface org.jboss.jmx.adaptor.rmi.RMIAdaptorExt)
- | +- rmi (class: org.jnp.interfaces.NamingContext)
- | | +- RMIAdaptor[link -> jmx/invoker/RMIAdaptor] (class: javax.naming.LinkRef)
- +- jdbc (class: org.jnp.interfaces.NamingContext)
- | +- XYZ (class: javax.sql.DataSource)
- +- persistence.unit:unitName=XYZ-goplus-ear.ear (class: org.jnp.interfaces.NamingContext)
- | +- XYZ-base-metier-impl.jar#OracleCnx_XYZ35 (class: org.hibernate.impl.SessionFactoryImpl)
- +- TomcatAuthenticators (class: java.util.Properties)
- +- console (class: org.jnp.interfaces.NamingContext)
- | +- PluginManager (proxy: $Proxy254 implements org.jboss.console.manager.PluginManagerMBean (no security manager: RMI class loader disabled))