Не удалось преобразовать атомико J2eeTransactionManager в необходимый тип jakarta TransactionManager.JAVA

Программисты JAVA общаются здесь
Anonymous
Не удалось преобразовать атомико J2eeTransactionManager в необходимый тип jakarta TransactionManager.

Сообщение Anonymous »

У меня есть Java-приложение, которое работает в Docker с использованием Tomcat и Maven.
Мы используем команду docker-compose для сборки/разработки приложения. build работает нормально, но когда я выполняю, выдается ошибка:

Код: Выделить всё

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in class path resource [applicationContext-core-infrastructure.xml]: Failed to convert property value of type 'com.atomikos.icatch.jta.J2eeTransactionManager' to required type 'jakarta.transaction.TransactionManager' for property 'transactionManager'; Cannot convert value of type 'com.atomikos.icatch.jta.J2eeTransactionManager' to required type 'jakarta.transaction.TransactionManager' for property 'transactionManager': no matching editors or conversion strategy found
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365)
... 126 more
Caused by: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'com.atomikos.icatch.jta.J2eeTransactionManager' to required type 'jakarta.transaction.TransactionManager' for property 'transactionManager'; Cannot convert value of type 'com.atomikos.icatch.jta.J2eeTransactionManager' to required type 'jakarta.transaction.TransactionManager' for property 'transactionManager': no matching editors or conversion strategy found
at org.springframework.beans.AbstractNestablePropertyAccessor.convertIfNecessary(AbstractNestablePropertyAccessor.java:595)
at org.springframework.beans.AbstractNestablePropertyAccessor.convertForProperty(AbstractNestablePropertyAccessor.java:609)
at org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:190)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.convertForProperty(AbstractAutowireCapableBeanFactory.java:1747)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1691)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1436)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599)
... 132 more
Caused by: java.lang.IllegalStateException: Cannot convert value of type 'com.atomikos.icatch.jta.J2eeTransactionManager' to required type 'jakarta.transaction.TransactionManager' for property 'transactionManager': no matching editors or conversion strategy found
at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:273)
at org.springframework.beans.AbstractNestablePropertyAccessor.convertIfNecessary(AbstractNestablePropertyAccessor.java:590)
... 138 more
SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [] startup failed due to previous errors
INFO [main] org.apache.catalina.core.ApplicationContext.log Closing Spring root WebApplicationContext
WARNING [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [ROOT] registered the JDBC driver [org.postgresql.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
WARNING [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ROOT] appears to have started a thread named [bitronix-task-scheduler] but has failed to stop it. This is very likely to create a memory leak.  Stack trace of thread:
java.base/java.lang.Thread.sleep0(Native Method)
java.base/java.lang.Thread.sleep(Thread.java:509)
bitronix.tm.timer.TaskScheduler.run(TaskScheduler.java:245)
Мы используем XML-конфигурацию менеджера транзакций Самое смешное, что приложение работает и у двух других моих коллег.
Я пытался убедиться, что maven зависимости в контейнере Docker в порядке, и я даже использовал том docker rm [имя-тома] и заново создал все, но это не решило проблему.
Я сравнил мой коллега использует зависимости mvn от своего контейнера Docker с моим: Docker Desktop > щелкните имя контейнера > вкладка Exec > напишите bash (после этого вы должны быть в Tomcat) > cd webapps > cd ROOT > cd WEB-INF > cd lib > ls и они абсолютно одинаковые.
В этом старом посте https://fogbugz.atomikos.com/default3c3 ... y.6.3158.2 предлагается поискать другую транзакцию jar, который может вызвать конфликты. Я пытаюсь это заметить.

Подробнее здесь: https://stackoverflow.com/questions/788 ... arta-trans

Вернуться в «JAVA»