2015-05-21 32 views
0

我正在將數據從WL 5.0.6.2遷移到6.2。這樣做時我遇到了運行數據遷移工具的問題。Worklight 6.2遷移工具錯誤

背景: 方法: 我們將WRKLGHT表從5062 DB導出到中間數據庫進行數據遷移,因此運行的數據庫不受影響。

DBs: 
    1. schema: proj 
    its storing 5062 runtime data, upgrade-worklight-506-60-oracle.sql, upgrade-worklight-60-61-oracle.sql upgrade sql are executed. 
    2. schema: proj6 
    its blank DB at first, "create-worklightadmin-oracle.sql" is executed to prepare WLADMIN tables. 

WL Project existing: 
    1. wlProj 
     its the app running on 5062 WL server 
    2. wlProj6 
     its the target project running on 6.2 WL, and data will be migrated to be used by this project 

Steps: 
1. recreate proj6 schema 
    1.1 SQLPlus -> connect as SYSTEM -> "drop user proj6 cascade" 
    1.2. -> "create user proj6 identified by {password}" -> "grant all privileges to proj6" 

2. execute "create-worklightadmin-oracle.sql" on proj6 schema 
    2.1 SQLDeveloper -> connect as user proj6 
    2.2 run @"{ WL server install dir}/databases/create-worklightadmin-oracle.sql"; 
    2.3 commit 

3. Open cmd and run the following command 
    java -cp ojdbc6.jar;worklight-ant-deployer.jar com.ibm.worklight.config.dbmigration62.MigrationTool -p /wlProj -sourceurl jdbc:oracle:thin:@//192.168.0.**:1521/xe -sourcedriver oracle.jdbc.driver.OracleDriver -sourceuser proj -sourcepassword *** -targeturl jdbc:oracle:thin:@//192.168.0.***:1521/xe -targetdriver oracle.jdbc.driver.OracleDriver -targetuser proj6 -targetpassword *** 2>out.txt 

'遷移wlProj- {IOS,機器人}' & '遷移訪問數據記錄wlProj -.....' 示於CMD。

而在out.txt中,顯示以下錯誤。

15 WorklightManagementPU-oracle INFO [main] openjpa.Runtime - Starting OpenJPA 1.2.2 
15 WorklightManagementPU-oracle INFO [main] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary". 
com.ibm.worklight.config.dbmigration62.exceptions.MigrationException: FWLSE3406E: The applications migration failed with error The field "description" of instance "ApplicationEntity[id=51, name=wlProj, displayName=, description=null, thumbnail=null, platformVersion=null]" contained a null value; the metadata for this field specifies that nulls are illegal.. 
    at com.ibm.worklight.config.dbmigration62.MigrationTool.run(MigrationTool.java:195) 
    at com.ibm.worklight.config.dbmigration62.MigrationTool.main(MigrationTool.java:128) 
Caused by: <openjpa-1.2.2-r422266:898935 fatal user error> org.apache.openjpa.persistence.InvalidStateException: The field "description" of instance "ApplicationEntity[id=51, name=wlProj, displayName=, description=null, thumbnail=null, platformVersion=null]" contained a null value; the metadata for this field specifies that nulls are illegal. 
    at org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:540) 
    at org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:478) 
    at org.apache.openjpa.kernel.StateManagerImpl.preFlush(StateManagerImpl.java:2829) 
    at org.apache.openjpa.kernel.PNewState.beforeFlush(PNewState.java:39) 
    at org.apache.openjpa.kernel.StateManagerImpl.beforeFlush(StateManagerImpl.java:960) 
    at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1967) 
    at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:1927) 
    at org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1845) 
    at org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81) 
    at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1369) 
    at org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:877) 
    at org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:512) 
    at com.ibm.worklight.config.dbmigration62.ApplicationMigration.migrateApplication(ApplicationMigration.java:138) 
    at com.ibm.worklight.config.dbmigration62.ApplicationMigration.migrate(ApplicationMigration.java:63) 
    at com.ibm.worklight.config.dbmigration62.AbstractMigration.run(AbstractMigration.java:66) 
    at com.ibm.worklight.config.dbmigration62.MigrationTool.run(MigrationTool.java:183) 
    ... 1 more 
ERROR 20 : FWLSE3406E: The applications migration failed with error The field "description" of instance "ApplicationEntity[id=51, name=wlProj, displayName=, description=null, thumbnail=null, platformVersion=null]" contained a null value; the metadata for this field specifies that nulls are illegal.. 

回答

0

這被記錄爲IBM PMR#77138,999,738,並被識別爲當前正在處理的缺陷。
除了通過支持服務單等待修復之外,沒有其他的本地修復方法。