我正在尝试使用 Groovy 脚本和 ODI SDK 自动导入 ODI 12c 中的映射 (XML)。但是我的代码只是继续运行而没有任何结果。这是我的代码。
txnDef = new DefaultTransactionDefinition()
tm = odiInstance.getTransactionManager()
tme = odiInstance.getTransactionalEntityManager()
txnStatus = tm.getTransaction(txnDef)
ImportServiceImpl importSrv = new ImportServiceImpl(odiInstance);
importSrv.importObjectFromXml(importSrv.IMPORT_MODE_SYNONYM_INSERT, filename, parentObj, true, null, true);
tm.commit(txnStatus)
代码会无限期地运行,直到我手动终止程序。我不明白有什么问题。链接到 javadoc:https://docs.oracle.com/middleware/1213/odi/reference-java-api/oracle/odi/impexp/IImportService.html#importObjectFromXml(int,%20java.lang.String,%20boolean, %20char[],%20boolean)
而且,我不明白方法中的第四个参数
void importObjectFromXml(int pImportMode,
java.lang.String pFileName,
IImportRoot pObjectParent,
boolean pDeclareMissingRepository,
char[] pExportKey,
boolean pImportWithoutCipherData)
throws OdiImportNotSupportedException,
OdiImportException,
java.io.IOException
我尝试对 pDeclareMissingRepository 使用 true 和 false ,但没有一个有效。如果我遗漏了什么,请帮忙。
谢谢。