2016-12-26 10 views
0

Я новичок в bitronix, и мне нужна транзакция xa в моем приложении.Конфигурация Bitronix с исключением tomtat jndi

Я пытаюсь настроить bitronix с помощью пружины, но я становлюсь ниже исключения, начиная с tomcat.

Любая помощь приветствуется.

Вызванный: org.hibernate.engine.jndi.JndiException: Не удалось найти имя JNDI [javax.transaction.TransactionManager] на org.hibernate.engine.jndi.internal.JndiServiceImpl.locate (JndiServiceImpl.java:117) at org.hibernate.engine.transaction.jta.platform.internal.WeblogicJtaPlatform.locateTransactionManager (WeblogicJtaPlatform.java:41) org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.canRegisterSynchronization (AbstractJtaPlatform.java: 148) at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.attemptToRegisterJtaSync (TransactionCoordinatorImpl.java:252) at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.pulse (TransactionCoordinatorImpl. Java: 289) в org.hibernate.jpa.spi.AbstractEntityManagerImpl.joinTransaction (AbstractEntityManagerImpl.java:1584) в org.hibernate.jpa.spi.AbstractEntityManagerImpl.postInit (AbstractEntityManagerImpl.java:210) в org.hibernate. jpa.internal.EntityManagerImpl. (EntityManagerImpl.java:91) в org.hibernate.jpa.internal.EntityManagerFactoryImpl.internalCreateEntityManager (EntityManagerFactoryImpl.java:345) в org.hibernate.jpa.internal.EntityManagerFactoryImpl.createEntityManager (EntityManagerFactoryImpl.java : 313) на sun.reflect.NativeMethodAccessorImpl.invoke0 (нативный метод) на sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAcc essorImpl.java:43) на java.lang.reflect.Method.invoke (Method.java:606) на org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod (AbstractEntityManagerFactoryBean.java:407) в org.springframework. orm.jpa.AbstractEntityManagerFactoryBean $ ManagedEntityManagerFactoryInvocationHandler.invoke (AbstractEntityManagerFactoryBean.java:560) на com.sun.proxy. $ Proxy78.createEntityManager (Unknown Source) в org.springframework.orm.jpa.SharedEntityManagerCreator $ SharedEntityManagerInvocationHandler.invoke (SharedEntityManagerCreator. java: 288) at com.sun.proxy. $ Proxy83.getDelegate (Неизвестный источник) at org.springframework.data.jpa.provider.PersistenceProvider.fromEntityManager (PersistenceProvider.java:295) Причиненный: javax.naming.NameNotFoundException: Имя [javax.transaction.TransactionManager] не связано в этом контексте. Не удалось найти [javax.transaction.TransactionManager]. at org.apache.naming.NamingContext.lookup (NamingContext.java:818) at org.apache.naming.NamingContext.lookup (NamingContext.java:152) at org.apache.naming.SelectorContext.lookup (SelectorContext. Java: 134) на javax.naming.InitialContext.lookup (InitialContext.java:415) на org.hibernate.engine.jndi.internal.JndiServiceImpl.locate (JndiServiceImpl.java:114)

ответ

0

Похоже, из ваша трассировка стека вы используете свое приложение в tomcat, поэтому убедитесь, что ниже точки:

1) у вас не должно быть jta, связанных с bitronix банок в вашем pom.xml или конкретном проекте lib fo потому что эта банка должна находиться в вашей папке tomcat lib.

2) Также измените сервер.xml и context.xml в соответствии с документом, эти два файла существуют в папке conf в tomcat.

Я не уверен, какова ваша конфигурация для поиска jndi. Вы можете перейти по ссылке, которая предназначена для настройки bitronix для tomcat.

https://github.com/bitronix/btm/blob/master/btm-docs/src/main/asciidoc/TomcatWithBtm2x.adoc

+0

@ Boot. Спасибо, она решила мою проблему. У меня не было context.xml в папке META-INF в моем приложении. –