Použít rozšíření WebSphere k definování mapování CMP

Soubor weblogic-cmp-rdbms-jar.xml obsahuje mapování z atributů EJB do sloupců databáze používaných objekty CMP (Container-Managed Persistence) a CMR (Container-Managed Relationships).

Pravidlo zjišťuje mapování polí CMP v souboru weblogic-cmp-rdbms-jar.xml. Po poskytnutí automatické opravy se pokusí vygenerovat mapování, které potřebuje WebSphere(R ) Aplikační server pro kontejnerem řízená perzistence fungovala. Mapování jsou citlivá na typ databáze a schéma. Automatická oprava se proto pokusí vybrat správné schéma databáze podle nejlepšího odhadu.

Řešení

Dodavatel databáze může být konfigurován na panelu vlastností pravidla. Při nastavení na Autodetekce určuje nastavení database-type v souboru weblogic-cmp-rdbms-jar.xml typ použité databáze. Není-li specifikována, použije se Oracle. Podporované typy databází jsou pouze DB2(R), Oracle, SQLServer a SQLServer2000. MySQL, POINTBASE, Informix(R) a Sybase nelze migrovat.

V následující tabulce je zobrazen typ Java pro typ sloupce použité databáze. Pokud se vaše schéma databázové tabulky odchyluje od tohoto formátu, pak CMP nemusí fungovat. V takových případech pomocí nastavení Meet-In-The-Middle v průvodci mapování EJB na RDB produktu Rational Application Developer migrujte mapování CMP.

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 DATARAWOBRÁZEK

Zamykání před aktualizací

Během migrace, pokud je to možné, je migrováno nastavení zamykání před aktualizací. V případě, že je volba <verify-columns> nastavena na Timestamp nebo Version v souboru weblogic-cmp-rdbms-jar.xml, bude povoleno zamykání před aktualizací pro sloupec určený v části <optimistic-column>. To lze provést pouze v případě, že je sloupec mapován na pole CMP, které je na serveru WebLogic volitelné. Není-li sloupec mapován, musí být nové pole přidáno ručně do objektu enterprise bean a mapováno na sloupec v souboru weblogic-cmp-rdbms-jar.xml.

Hodnota Read nebo Modified parametru <verify-columns> není pro migraci podporována.