从JPA 2.1升级到JPA 2.2

Leo*_*dle 6 java jpa eclipselink jpa-2.2

我有升级到JPA 2.2的问题.我正在使用eclipselink并更改了我的pom中的版本:

<dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>eclipselink</artifactId>
        <version>2.7.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我还更新了persistence.xml以指向xsd的正确版本:

<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
    http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd"
    version="2.2">
<persistence-unit name="foo" transaction-type="RESOURCE_LOCAL">
    <class>my.entity</class>
    <properties>
        <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
        <property name="javax.persistence.jdbc.url" value="jdbc:derby:foo/data;create=true" />
        <property name="javax.persistence.jdbc.user" value="user" />
        <property name="javax.persistence.jdbc.password" value="pwd" />

        <property name="eclipselink.ddl-generation" value="create-or-extend-tables" />
        <property name="eclipselink.ddl-generation.output-mode" value="database" />
    </properties>

</persistence-unit>
</persistence>
Run Code Online (Sandbox Code Playgroud)

问题是我收到以下错误消息:

persistence.xml文件没有此JPA平台支持的内容.

我查看了eclipselink文档,没有任何内容向我跳出来.

有任何想法吗?

hd4*_*d42 3

从 JPA 2.0 升级到 2.1 后,我遇到了同样的错误消息;我还通过将 Eclipse 项目 JPA 设置中的 JPA 平台升级到 EclipseLink 2.5.x 来摆脱它。