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

如何在不修改URL的情况下动态切换Oracle Apex 22语言?

Oracle Apex 22 无URL变更切换语言方案

页眉前流程完全可行,但单纯执行ALTER SESSION SET NLS_LANGUAGE = 'BASQUE';无法生效的原因是,Apex的语言渲染逻辑不仅依赖Oracle会话的NLS设置,还需要同步Apex自身的会话语言属性。以下是具体实现步骤:

  • 创建页眉前流程,类型选择「PL/SQL」
  • 流程代码需要同时完成两个操作:
    1. 调整Oracle会话的NLS参数:
      ALTER SESSION SET NLS_LANGUAGE = 'BASQUE';
      ALTER SESSION SET NLS_TERRITORY = 'BASQUE';
      
    2. 调用Apex内置API同步会话语言属性(注意替换为对应语言的ISO代码,巴斯克语为eu):
      APEX_UTIL.SET_SESSION_LANGUAGE('eu');
      
  • 设置流程触发条件:根据你存储用户语言偏好的位置来配置,比如读取会话级应用项(如P0_SELECTED_LANG)、浏览器Cookie或用户表中的语言字段,当该值变化时执行流程。

需要注意的前提是:你的Apex应用已经安装了巴斯克语言包,否则无法加载对应语言的翻译资源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 09:32:32