0

所以我升级了我的应用程序以使用支持 jpa 2.2 的 hibernate 5.4 我曾经使用 websphere 9 作为我的应用程序服务器,但不幸的是这个服务器只支持 jpa 2.0 和 2.1 我曾尝试将 5.4 与 jpa2.1 一起使用它可以工作但我可能会导致问题在我以后的申请中。那么有没有支持 jpa 2.2 的 websphere 版本?

Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.1: La valeur '2.2' de l'attribut 'version' de l'?l?ment 'persistence' n'est pas valide au regard de l'utilisation de l'attribut correspondant. L'attribut 'version' doit avoir la valeur fixe de '2.1.
4

2 回答 2

2

JPA 2.2 是 Java EE 和 Jakarta EE 8 规范的一部分。传统 WebSphere Application Server 9 仅支持 JPA 2.0 和 2.1,因为它最高支持 Java EE 7。WebSphere Liberty 和 Open Liberty 支持 Java EE 和 Jakarta EE 8。由于您已经在使用传统 WebSphere,因此您可以使用 WebSphere Liberty。

有一些迁移工具可以帮助从使用传统 WebSphere 过渡到 Liberty。您可以在此处找到有关迁移工具包的信息: https ://developer.ibm.com/wasdev/docs/migration/

于 2020-05-04T12:14:27.120 回答
0

英文版错误:

原因:org.xml.sax.SAXParseException: cvc-complex-type.3.1: 元素“persistence”的属性“version”的值“2.2”对于相应属性的使用无效。“版本”属性必须具有固定值“2.1”。

您是否有理由需要在“2.2”版本上运行您的 persistence.xml 模式?

这样做的唯一原因是获得对persistence.xml 模式的新部分的访问权;作为 JPA 2.2 规范的一部分添加。如果您没有利用任何新东西,我建议您使用“2.1”版本。

于 2020-05-12T22:59:45.417 回答