Używaj rozszerzeń produktu WebSphere do definiowania odwzorowań trwałości zarządzanej przez kontener

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.

Szybka poprawka (do zastosowania tylko do skanera kodu źródłowego):

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 JavaDB2OracleSQLServer
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