我正在尝试与JPA建立一个新的Netbeans项目。Java SDK版本为1.5.0_22-b03, J2EE版本为J2EE 1.4。我正在使用JPA的TOPLINK Essentials。
javax.transaction.UserTransaction接口是J2EE 1.4附带的。那为什么找不到javax.transaction.UserTransaction
呢?
JPA 1.0规范旨在迎合Java EE 5容器而不是J2EE 1.4容器(除非它们也支持EJB 3.0,就像Oracle以前的OC4J容器一样)。同样,JPA 2.0也适用于Java EE 6容器。
我建议在Java EE 5或Java EE 6中使用Netbeans,而不是徒劳地让您的JPA 1.0/2.0提供程序与J2EE 1.4容器友好地工作。这不仅仅是在编译时的类路径中放置一些jar;您的运行时类路径将需要仅在Java EE 5/6容器中可用的类。
要么是您的类路径不正确,要么是您缺少必需的jar。你用什么来构建?
您没有正确地在项目类路径中包含j2ee-1.4.jar。否则你可以参考它。也许你在netbeans中设置java项目的类路径时遇到了问题。
请检查您的jar以确保正确下载。
也许这是一个老问题,但由于没有其他答案已张贴,我张贴我所能做的使其工作。
我发现一个文件在:
C:Program Files (x86)NetBeans 8.1javamodulesexthibernate4
右键单击project>Libraries>Add jar> find your Netbeans安装目录…
usually => C:Program Files (x86) NetBeansXXX
找到javamodulesexthibernate4并选择jboss-transaction-apixxxxx.jar
希望对大家有所帮助,