El archivo weblogic-cmp-rdbms-jar.xml contiene correlaciones de atributos EJB con las columnas de bases de datos utilizadas por la persistencia gestionada por contenedor (CMP) y las relaciones gestionadas por contenedor (CMR).
La regla detecta las correlaciones de campos CMP en el archivo weblogic-cmp-rdbms-jar.xml. Cuando se proporcione la corrección automatizada, ésta intentará generar las asignaciones que necesita WebSphere(R ) Servidor de aplicaciones para para que funcione la persistencia gestionada por contenedor. Las correlaciones son sensibles al tipo y esquema de base de datos. Por lo tanto, la corrección automatizada hará el mejor esfuerzo posible para elegir un esquema correcto para la base de datos.
El proveedor de la base de datos se puede configurar en el panel de propiedades de la regla. Si se define como Detección automática, el valor database-type del archivo weblogic-cmp-rdbms-jar.xml determina el tipo de base de datos utilizado. Si no se especifica ninguno, se utiliza Oracle. Los únicos tipos de base de datos soportados son DB2(R), Oracle, SQLServer y SQLServer2000. MySQL, POINTBASE, Informix(R) y Sybase no se pueden migrar.
La tabla siguiente muestra el tipo Java respecto al tipo de columna de base de datos utilizado. Si el esquema de tabla de base de datos se desvía de este formato, CMP no funcionará. En estos casos, utilice el valor Meet-In-The-Middle del asistente de correlaciones de EJB a RDB de Rational Application Developer para migrar las correlaciones CMP.
| Tipo Java | DB2 | Oracle | SQLServer |
|---|---|---|---|
| java.lang.Integer/int | INTEGER | INTEGER | INTEGER |
| java.lang.Double/double | DOUBLE PRECISION | DOUBLE PRECISION | DOUBLE PRECISION |
| java.lang.Float/float | FLOAT | FLOAT | FLOAT |
| java.lang.Short/short | INTEGER | INTEGER | SMALLINT |
| java.lang.Long/long | BIGINT | INTEGER | DECIMAL |
| java.math.BigDecimal | DECIMAL | DECIMAL | DECIMAL |
| java.lang.String | VARCHAR | VARCHAR | VARCHAR |
| java.lang.Character/char | CHAR | CHAR | CHAR |
| java.lang.Byte/byte | INTEGER | INTEGER | TINYINT |
| java.lang.Boolean/boolean | INTEGER | INTEGER | INTEGER |
| java.sql.Date | DATE | DATE | DATETIME |
| java.sql.Time | TIME | DATE | DATETIME |
| java.sql.Timestamp | TIMESTAMP | DATE | DATETIME |
| byte[]/java.io.Serializable | VARCHAR FOR BIT DATA | RAW | IMAGE |
Durante la migración, los valores de bloqueo optimista se migran si es posible. Si <verify-columns> se establece en Timestamp o Version en el archivo weblogic-cmp-rdbms-jar.xml, se habilitará el bloqueo optimista para la columna especificada en <optimistic-column>. Esto sólo puede hacerse si la columna está correlacionada con un campo CMP, que en WebLogic es opcional. Si la columna no está correlacionada, debe añadirse manualmente un nuevo campo al enterprise bean y correlacionarse con una columna en el archivo weblogic-cmp-rdbms-jar.xml.
Un valor de <verify-columns> igual a Read o Modified no está soportado para la migración.