WebSphere-Erweiterungen für die Definition von CMP-Zuordnungen verwenden

Die Datei weblogic-cmp-rdbms-jar.xml enthält Zuordnungen von EJB-Attributen zu Datenbankspalten, die von CMP (Container-Managed Persistence) und CMR (Container-Managed Relationships) verwendet werden.

Die Regel erkennt CMP-Feldzuordnungen in der Datei weblogic-cmp-rdbms-jar.xml. Wenn der automatische Fix bereitgestellt wird, wird er versuchen, die von WebSphere(R benötigten Zuordnungen zu generieren.) Anwendungsserver für die Container Managed Persistence zu funktionieren. Die Zuordnungen reagieren empfindlich auf den Datenbanktyp und das Datenbankschema. Daher wird die automatische Korrektur nach bestem Wissen und Gewissen ein korrektes Schema für die Datenbank auswählen.

Lösung

Der Datenbankanbieter kann in der Eigenschaftenanzeige der Regel konfiguriert werden. Wenn Auto detect gesetzt ist, bestimmt die Einstellung database-type in der Datei weblogic-cmp-rdbms-jar.xml den Typ der verwendeten Datenbank. Wenn "none" angegeben ist, wird Oracle verwendet. Die einzigen unterstützten Datenbanktypen sind DB2(R), Oracle, SQLServer und SQLServer2000. MySQL, POINTBASE, Informix(R) und Sybase können nicht migriert werden.

In der folgenden Tabelle sind die Zuordnungen der Java-Typen zu den Datenbankspaltentypen aufgelistet. Wenn Ihr Datenbanktabellenschema von diesem Format abweicht, funktioniert CMP möglicherweise nicht. Verwenden Sie in diesen Fällen in Rational Application Developer die Einstellung "Meet-In-The-Middle" im Assistenten für die Zuordnung von EJBs zu RDBs, um die CMP-Zuordnungen zu migrieren.

Java-TypDB2OracleSQLServer
java.lang.Integer/intINTEGERINTEGERINTEGER
java.lang.Double/doubleDOUBLE PRECISIONDOUBLE PRECISIONDOUBLE PRECISION
java.lang.Float/floatFLOATFLOATFLOAT
java.lang.Short/shortINTEGERINTEGERSMALLINT
java.lang.Long/longBIGINTINTEGERDECIMAL
java.math.BigDecimalDECIMALDECIMALDECIMAL
java.lang.StringVARCHARVARCHARVARCHAR
java.lang.Character/charCHARCHARCHAR
java.lang.Byte/byteINTEGERINTEGERTINYINT
java.lang.Boolean/booleanINTEGERINTEGERINTEGER
java.sql.DateDATEDATEDATETIME
java.sql.TimeTIMEDATEDATETIME
java.sql.TimestampTIMESTAMPDATEDATETIME
byte[]/java.io.SerializableVARCHAR FOR BIT DATARAWIMAGE

Optimistisches Sperren

Während der Migration werden die Einstellungen für optimistisches Sperren migriert, sofern dies möglich ist. Falls <verify-columns> in der Datei weblogic-cmp-rdbms-jar.xml auf Timestamp oder Version gesetzt ist, wird optimistisches Sperren für die unter <optimistic-column> angegebene Spalte aktiviert. Dies ist nur möglich, wenn die Spalte einem CMP-Feld zugeordnet ist, was in WebLogic optional ist. Wenn die Spalte nicht zugeordnet ist, muss der Enterprise-Bean manuell ein neues Feld hinzugefügt und einer Spalte in der Datei weblogic-cmp-rdbms-jar.xml zugeordnet werden.

Die Werte "Read" und "Modified" für <verify-columns> werden für die Migration nicht unterstützt.