此規則偵測 persistence.xml 檔案中的 OpenJPA 和 WebSphere 供應商特定 JPA 2.0 配置內容。您必須手動將這些內容移轉為標準化或 EclipseLink 內容。
此規則會標示 name 屬性開頭為 openjpa.* 或 wsjpa.* 的任何 property 元素,但 openjpa.jdbc.Schema 內容(由 openjpa.jdbc.Schema 規則標示)及 openjpa.LockManager 內容(由 openjpa.LockManager 規則標示)除外。
wsjpa 配置內容是以 OpenJPA 為建置基礎的 WebSphere Traditional 及 Liberty JPA 2.0 實作所特有的。
在下列 persistence.xml 檔中,所有四個 property 元素都是由此規則標示。
<persistence>
<persistence-unit name="openjpa">
<properties>
...
<property name="openjpa.ConnectionURL "
value="jdbc:db2://host.ibm.com:50000/mydb2user" />
<property name="openjpa.ConnectionDriverName" value="com.ibm.db2.jcc.DB2Driver" />
<property name="openjpa.ConnectionUserName" value="mydb2user" />
<property name="openjpa.ConnectionPassword" value="password" />
...
</properties>
</persistence-unit>
</persistence>
若要解決此問題,請將內容名稱變更為可用的標準化內容。
<persistence>
<persistence-unit name="openjpa">
<properties>
...
<property name="javax.persistence.jdbc.url"
value="jdbc:db2://host.ibm.com:50000/mydb2user" />
<property name="javax.persistence.jdbc.driver" value="com.ibm.db2.jcc.DB2Driver" />
<property name="javax.persistence.jdbc.user" value="mydb2user" />
<property name="javax.persistence.jdbc.password" value="password" />
...
</properties>
</persistence-unit>
</persistence>
依預設,在 EclipseLink 中已啟用第二級快取。
如果您在 persistence-unit 中設定了 <property name="openjpa.DataCache" value="true"/>,可移除此內容。
如需相關資訊,請參閱停用持續性單元第二級快取規則。
如需移轉供應商特定 JPA 配置內容的相關資訊,請參閱下列資源: