的
javax/persistence/Table.indexes()是从2.1 JPA,WebSphere应用服务器传统8.5.5.2被默认JPA
2.0(OpenJPA中)使用。如果要使用Hibernate,则必须覆盖默认提供程序-
更新
是的,你是对的。您不能使用JPA 2.1覆盖WebSphere传统8.5.5.x中的默认提供程序,因为容器依赖于2.0 API进行初始化。
如果必须使用2.1,则可以将其用作应用程序托管的提供程序,而不是容器托管的。因此,您将需要为您的应用程序禁用JPA,进行检查,而不是依赖容器来注入EntityManager,而是使用API自行对其进行初始化。
另一个选择是考虑从版本8.5.5.6开始支持JPA 2.1(使用Eclipselink)的WebSphere
Liberty。由于容器支持2.1,应该可以在那里更改提供程序,但是我没有时间对其进行测试。
您还可以升级到最近发布的WebSphere Application Server v9,该版本支持JPA 2.1。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)