Plik jbosscmp-jdbc.xml zawiera odwzorowania atrybutów komponentów EJB na kolumny bazy danych używane przez usługi CMP (Container-Managed Persistence) i CMR (Container-Managed Relationships).
Ta reguła wykrywa odwzorowania pól CMP w pliku jbosscmp-jdbc.xml. Szybka poprawka podejmuje próbę wygenerowania odwzorowań wymaganych przez serwer WebSphere(R) Application Server do działania usług CMP. Odwzorowania są zależne od typu i schematu bazy danych. Dlatego działanie szybkiej poprawki polega na odgadnięciu poprawnego schematu bazy danych.
Dostawcę bazy danych można skonfigurować na panelu właściwości reguły. Jeśli zostanie ustawiona wartość Automatyczne wykrywanie, ustawienie database-type w pliku jbosscmp-jdbc.xml określa typ używanej bazy danych. Jeśli nie zostanie podana żadna wartość, używana będzie baza danych DB2. Obsługiwane są tylko następujące typy bazy danych: DB2(R), Oracle, SQLServer i SQLServer2000. Baz danych MySQL, POINTBASE, Informix(R) i Sybase nie można poddać migracji.
W poniższej tabeli przedstawiono odwzorowania typów Java na typy kolumn używanej bazy danych. Jeśli schemat tabeli bazy danych odbiega od tego formatu lub jeśli w pliku jbosscmp-jdbc.xml określone są niestandardowe typy danych, usługi CMP mogą nie działać. W takich przypadkach do migracji odwzorowań CMP należy użyć ustawienia Zbieżne w kreatorze odwzorowań EJB na RDB produktu Rational Application Developer.
| Typ 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 |