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

Apex控制台报错求助:Service Workers及动态内容区域相关问题

Oracle APEX 23.1.3 浏览器控制台报错排查与解决

报错内容汇总

控制台出现以下警告与错误:

Service workers are not supported on HTTP pages.
Dynamic Content region must use a template with ID attribute
Uncaught Error: Region element not found R8673356286039918

完整报错堆栈:

desktop_all.min.js?v=23.1.0:5 Service workers are not supported on HTTP pages.
e.warn @ desktop_all.min.js?v=23.1.0:5
a.init @ desktop_all.min.js?v=23.1.0:56
(anonymous) @ brentity?p2_form_mode=A&session=23824403876947&cs=1hYXr2ArG3_e2gkrL3_LRx3UHQqIHPp6H0k1pUHyMPqYW0l-n6M2ZmPbAKGBSMgr7qYA-t1nqMXNobXExoxO09Q:2507
desktop_all.min.js?v=23.1.0:5 Dynamic Content region must use a template with ID attribute
e.error @ desktop_all.min.js?v=23.1.0:5
s @ desktop_all.min.js?v=23.1.0:53
(anonymous) @ desktop_all.min.js?v=23.1.0:53
e @ desktop_all.min.js?v=23.1.0:2
t @ desktop_all.min.js?v=23.1.0:2
setTimeout (async)
(anonymous) @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
fire @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
ready @ desktop_all.min.js?v=23.1.0:2
$ @ desktop_all.min.js?v=23.1.0:2
desktop_all.min.js?v=23.1.0:5 console.trace
e.error @ desktop_all.min.js?v=23.1.0:5
s @ desktop_all.min.js?v=23.1.0:53
(anonymous) @ desktop_all.min.js?v=23.1.0:53
e @ desktop_all.min.js?v=23.1.0:2
t @ desktop_all.min.js?v=23.1.0:2
setTimeout (async)
(anonymous) @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
fire @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
ready @ desktop_all.min.js?v=23.1.0:2
$ @ desktop_all.min.js?v=23.1.0:2
desktop_all.min.js?v=23.1.0:14 Uncaught Error: Region element not found R8673356286039918
    at l.create (desktop_all.min.js?v=23.1.0:14:1801)
    at new s (desktop_all.min.js?v=23.1.0:53:591)
    at HTMLDocument.<anonymous> (desktop_all.min.js?v=23.1.0:53:666)
    at e (desktop_all.min.js?v=23.1.0:2:30158)
    at t (desktop_all.min.js?v=23.1.0:2:30460)
l.create @ desktop_all.min.js?v=23.1.0:14
s @ desktop_all.min.js?v=23.1.0:53
(anonymous) @ desktop_all.min.js?v=23.1.0:53
e @ desktop_all.min.js?v=23.1.0:2
t @ desktop_all.min.js?v=23.1.0:2
setTimeout (async)
(anonymous) @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
fire @ desktop_all.min.js?v=23.1.0:2
c @ desktop_all.min.js?v=23.1.0:2
fireWith @ desktop_all.min.js?v=23.1.0:2
ready @ desktop_all.min.js?v=23.1.0:2
$ @ desktop_all.min.js?v=23.1.0:2

复现步骤

  • 创建新页面
  • 添加一个区域
  • 将区域类型改为Dynamic Content
  • 在PL/SQL Function Body returning a CLOB中写入return '';
  • 在外观设置中将Template改为None
  • 运行页面

报错原因分析

  1. Service workers警告:Service Worker API仅支持HTTPS协议(localhost开发环境除外),HTTP页面无法启用该功能,属于环境限制类提示,不影响核心功能。
  2. Dynamic Content区域错误:这是APEX 23.1.3的已知bug,当Dynamic Content区域设置为无模板且PL/SQL返回空内容时,页面不会生成带ID属性的DOM容器,导致APEX的前端JS无法找到对应区域元素,进而抛出错误。

解决方案

针对Service Worker警告

  • 生产环境:将应用部署到HTTPS域名下,即可消除该警告。
  • 本地开发:使用localhost访问应用,浏览器会允许localhost使用Service Worker,警告自动忽略。

针对Dynamic Content区域错误

以下方案任选其一:

  • 方案1:指定带ID的区域模板:给Dynamic Content区域选择一个包含ID属性的模板,比如默认的Blank with Attributes模板,确保页面生成带ID的容器,即使返回空内容也能正常初始化。
  • 方案2:修改PL/SQL返回内容:如果必须使用无模板,修改PL/SQL函数,不要返回空字符串,至少返回一个空DOM标签,例如:
    return '<div></div>';
    
    确保页面存在可供JS识别的DOM元素。
  • 方案3:升级APEX版本:等待Oracle发布后续版本修复该bug,升级到最新稳定版即可解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 23:35:55