You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle APEX调用Invoke API时遇ORA-40597 JSON路径语法错误求助

Oracle APEX 23.1+ 「Invoke API」流程触发ORA-40597错误的解决

问题场景

使用Oracle APEX 23.1+版本,通过「Invoke API」页面流程调用Simple HTTP REST Data Source(RDS)获取数据填充表单项时,触发如下错误:

ORA-40597: JSON path expression syntax error ('$.') JZN-00217: Key step contains unexpected characters at position 2

环境与配置细节

  • API返回的JSON响应体结构:
{   
  "Body" : {     
      "ResponseStatus" : { ... },     
      "isfMembInfo" : {       
                        "MemberFirstName" : "...",       
                        "MemberRank" : "...",       
                        "EmployeeNumber" : "..." 
                      } 
   } 
}
  • REST Data Source配置:行选择器设为$.Body.isfMembInfo(已匹配JSON结构),列选择器直接使用对应键名(如MemberFirstName)
  • 页面流程配置:类型为「Invoke API」(加载前-页眉前),关联上述RDS,调用需EmployeeIdentifier输入参数(来自页面项)的fetchSingleRowUserISF GET操作,添加输出参数映射到页面项(如MEMBERRANK对应P1_MEMBER_RANK)时触发错误

错误原因及解决步骤

  1. 修正输出参数的JSON路径
    错误核心是输出参数的JSON路径被自动填充为不完整的$.,导致语法解析失败。

    • 进入流程的输出参数配置页,检查每个参数的「JSON路径」字段:
      • 若基于RDS行选择器,直接使用相对路径(即列名,如MemberRank)即可,APEX会自动结合行选择器拼接完整路径;
      • 也可填写完整绝对路径:$.Body.isfMembInfo.MemberRank,避免路径截断。
  2. 复用RDS预定义的输出参数
    检查RDS中fetchSingleRowUserISF操作的输出参数配置,确保每个参数的JSON路径已与响应体结构匹配。在页面流程关联时,直接选择RDS预定义的输出参数,而非手动输入路径,减少人为错误。

  3. 验证RDS数据解析有效性
    使用APEX自带的「测试REST数据来源」功能,调用fetchSingleRowUserISF操作,确认返回的JSON数据能被正确解析,列选择器可正常提取对应字段。若测试正常,说明RDS配置无误,仅需修正页面流程的输出参数路径即可。

内容的提问来源于stack exchange,提问作者Sly Warden

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 20:22:15