gpt4 book ai didi

java - 使用 ODI SDK 在 Odi 12c 中导入对象

转载 作者:行者123 更新时间:2023-12-01 09:06:32 26 4
gpt4 key购买 nike

我正在尝试使用 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,但没有任何效果。如果我遗漏了什么,请帮忙。

谢谢。

最佳答案

您应该使用importObjectFromXml而不是importFromXml这是特定于 SmartImport .

尝试使用 importSrv.importObjectFromXml(IImportService.IMPORT_MODE_SYNONYM_INSERT, filename, parentObj, true, null, true)

pDeclareMissingRepository 与 11g 中对象的识别方式相关联,具有内部 ID 和存储库 ID。导入时,它会检查是否可以识别导出对象的存储库 ID。我认为它不再被使用,但为了您的使用,您可以安全地将值保留为 true。

关于java - 使用 ODI SDK 在 Odi 12c 中导入对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41225923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com