TomEE 9.0 的 PersistenceProvider class 是什么?

What is the PersistenceProvider class for TomEE 9.0?

我正在为 TomEE 9.0 创建一个新应用程序。我有一个需要连接到数据库的简单 JPA 应用程序。我收到以下错误:

Nov 17, 2021 10:51:22 AM jakarta.persistence.spi.PersistenceProviderResolverHolder$DefaultPersistenceProviderResolver log
WARNING: jakarta.persistence.spi::No valid providers found.

persistence.xml 中的提供程序对于 TomEE 9.0 目标项目必须是什么?

如评论中所述,您想使用 EclipseLink 作为 JPA 提供程序。所需的提供程序 class 可以在 Eclipse Link 3.0 的 documentation 中找到,并且是

org.eclipse.persistence.jpa.PersistenceProvider

因此需要添加相关依赖:

<!-- https://mvnrepository.com/artifact/org.eclipse.persistence/eclipselink -->
<dependency>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>eclipselink</artifactId>
    <version>3.0.2</version>
</dependency>

此外,您需要在 persistence.xml:

中指定 JPA 提供程序 class
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>