Oracle EPM Hyperion 11.2中LoadExtractOM.loadData方法失效问题
根据你遇到的问题——11.1.2.4正常运行的JAX-RS服务在11.2环境下,LoadExtractOM.loadData仅返回扫描起止日志、无错误信息,结合服务器端xfm.odl的解析器错误日志,我整理了几个核心可能性:
API日志返回逻辑的版本变更
11.2版本对LoadExtractOM.loadData的日志收集策略做了调整。在11.1.2.4中,该方法会将底层解析器的错误信息直接封装到返回日志中,但11.2可能将这类底层错误的输出限制到了服务器端的xfm.odl日志,API返回的日志仅保留流程起止这类顶层状态信息。由于手动操作HFM能看到完整日志,说明错误信息并没有丢失,只是API的返回逻辑发生了变化。底层数据解析器的兼容性或隐性异常
从xfm.odl日志的报错位置(cxfmdatafileparser.cpp第233行、XfmExc异常)来看,11.2的HFM数据解析器可能做了重构,对数据文件的校验逻辑更严格。你的数据文件在API调用场景下触发了解析器的隐性异常,但这个异常没有被loadData方法向上抛送,而是被底层处理掉了,仅在服务器日志中留下记录。而手动操作HFM时可能走了不同的解析流程,或者有额外的异常捕获逻辑,所以能正常返回完整日志。API调用的上下文环境差异
检查下JAX-RS服务调用loadData时的用户上下文,和手动操作HFM的用户是否一致。11.2版本对用户权限的粒度控制更细致,可能API用户没有获取解析错误详情的权限,导致返回日志被过滤。另外,API调用时的工作目录、数据文件权限、临时目录读写权限是否和手动操作场景一致?这类环境差异可能触发解析器错误,但没有传递到上层的返回结果中。11.2早期版本的已知Bug
你使用的是11.2.1.0.000.5410这个早期版本,这类API日志返回不完整的问题很可能是版本迭代中的疏漏。建议查阅Oracle官方的Support文档,看看是否有对应的补丁修复了LoadExtractOM.loadData日志缺失的问题——这类行为不一致的问题通常会在后续补丁中得到解决。
内容的提问来源于stack exchange,提问作者GrahamD

