引起原因:java.lang.NoClassDefFoundError: Ljavax/transaction/TransactionManager;

MDP*_*MDP 2 java hibernate transactions spring-mvc

我读了很多关于该错误的帖子javax/transaction/TransactionManager,但这些解决方案都没有解决我的问题。

首先要说的是,当我在服务器上部署 Web 应用程序(使用 Spring MVC 和 Hibernate 制作)时,我收到了该错误。在我的电脑上,Eclipse 和 Tomcat 7 一切正常。

第二件事要说的是,在该服务器上,我有另一个 Web 应用程序在 tomcat 文件夹下运行/root(这是一个简单的 java 应用程序,既不使用 Spring mvc 也不使用 Hibernate)。我尝试部署的新应用程序正在另一个名为 的文件夹下运行/prova

这些是我的应用程序的所有库 在此输入图像描述

另外,根据我在一些帖子中读到的内容,我添加到了我的 lib 文件夹中:

1)jta-3.1.2.2.jar

2)hibernate3.3.1-jta-1.1.jar

3)javax.transaction.jar

在我的 xml 文件中,我有一个定义事务管理器的 bean

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
     <property name="sessionFactory" ref="sessionFactory" />
</bean>
Run Code Online (Sandbox Code Playgroud)

奇怪的是,在服务器日志中,确切的错误是

Caused by: java.lang.NoClassDefFoundError: Ljavax/transaction/TransactionManager;
Run Code Online (Sandbox Code Playgroud)

前面有个Ljavax/transaction/TransactionManager

任何想法?

谢谢

Pra*_*hta 5

这对我有用

<dependency>
    <groupId>javax.transaction</groupId>
    <artifactId>javax.transaction-api</artifactId>
    <version>1.3</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)