WebLogic utilisait Kodo à la place d'OpenJPA pour son implémentation de fournisseur JPA 1.0. Le correctif rapide proposé par le scanner de source convertit les classes Kodo qui possèdent un équivalent OpenJPA en classes ou packages OpenJPA correspondants. Le tableau ci-dessous répertorie les classes Kodo qui possèdent une correspondance directe avec les classes OpenJPA.
| Classe Kodo | Classe OpenJPA |
|---|---|
| kodo.util.ProxyManager | org.apache.openjpa.util.ProxyManager |
| kodo.jdbc.meta.Joinable | org.apache.openjpa.jdbc.meta.Joinable |
| kodo.persistence.jdbc.LockGroupVersionColumn | org.apache.openjpa.persistence.jdbc.VersionColumn |
| kodo.persistence.jdbc.LockGroupVersionColumns | org.apache.openjpa.persistence.jdbc.VersionColumns |
| kodo.persistence.jdbc.ElementColumn | org.apache.openjpa.persistence.jdbc.ElementJoinColumn |
| kodo.persistence.jdbc.ElementColumns | org.apache.openjpa.persistence.jdbc.ElementJoinColumns |
| kodo.persistence.jdbc.KeyColumn | org.apache.openjpa.persistence.jdbc.KeyColumn |
| kodo.persistence.jdbc.KeyColumns | org.apache.openjpa.persistence.jdbc.KeyColumns |
| kodo.persistence.jdbc.KeyJoinColumn | org.apache.openjpa.persistence.jdbc.KeyJoinColumn |
| kodo.persistence.jdbc.KeyJoinColumns | org.apache.openjpa.persistence.jdbc.KeyJoinColumns |
| kodo.persistence.jdbc.KeyEmbeddedMapping | org.apache.openjpa.persistence.jdbc.KeyEmbeddedMapping |
| kodo.jdbc.meta.ClassStrategy | org.apache.openjpa.jdbc.meta.ClassStrategy |
| kodo.jdbc.meta.strats.* | org.apache.openjpa.jdbc.meta.strats.* |
| kodo.jdbc.meta.DiscriminatorStrategy | org.apache.openjpa.jdbc.meta.DiscriminatorStrategy |
| kodo.jdbc.meta.VersionStrategy | org.apache.openjpa.jdbc.meta.VersionStrategy |
| kodo.jdbc.meta.ValueHandler | org.apache.openjpa.jdbc.meta.ValueHandler |
| kodo.jdbc.meta.FieldStrategy | org.apache.openjpa.jdbc.meta.FieldStrategy |
| kodo.event.OrphanedKeyAction | org.apache.openjpa.event.OrphanedKeyAction |
| kodo.kernel.BrokerImpl | org.apache.openjpa.kernel.BrokerImpl |
| kodo.event.TransactionListener | org.apache.openjpa.event.TransactionListener |
| kodo.kernel.StoreManager | org.apache.openjpa.kernel.StoreManager |
| kodo.datacache.DataCacheImpl | org.apache.openjpa.datacache.DataCacheImpl |
| kodo.datacache.AbstractDataCache | org.apache.openjpa.datacache.AbstractDataCache |
| kodo.datacache.DataCache | org.apache.openjpa.datacache.DataCache |
| kodo.event.RemoteCommitProvider | org.apache.openjpa.event.RemoteCommitProvider |
| kodo.datacache.QueryCacheImpl | org.apache.openjpa.datacache.QueryCacheImpl |
| kodo.datacache.AbstractQueryCache | org.apache.openjpa.datacache.AbstractQueryCache |
| kodo.datacache.QueryCache | org.apache.openjpa.datacache.QueryCache |
| kodo.event.AbstractRemoteCommitProvider | org.apache.openjpa.event.AbstractRemoteCommitProvider |
| kodo.event.RemoteCommitListener | org.apache.openjpa.event.RemoteCommitListener |
| kodo.jdbc.schema.DriverDataSource | org.apache.openjpa.jdbc.schema.DriverDataSource |
Cette règle détecte aussi l'utilisation d'annotations spécifiques à WebLogic :
Remarque : WebSphere Traditional version 8.5.5 et Liberty Web Profile 6.0 utilisent OpenJPA pour leur implémentation de JPA 2.0. L'implémentation de JPA 2.1 dans Java EE 7 pour WebSphere Traditional version 9.0 et Liberty utilise EclipseLink.