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. Automatyczna poprawka podejmie próbę wygenerowania mapowań wymaganych przez WebSphere(R ) Serwer aplikacji dla Container-Managed Persistence do działania. Odwzorowania są zależne od typu i schematu bazy danych. Zautomatyzowana poprawka podejmie próbę wyboru poprawnego schematu dla 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 |