【问题标题】:Cannot deploy rest service in EBS when DB upgraded to 19cDB升级到19c时无法在EBS中部署rest服务
【发布时间】:2021-05-26 11:34:10
【问题描述】:

我们最近在测试实例的 EBS 12.1.3 环境中将我们的数据库从 12c (12.1.0.2.0) 升级到了 19c(19.0.0.0.0)。升级后,我无法使用 SOA 休息服务集成存储库部署自定义 Web 服务。我在部署时遇到以下错误:

服务提供商访问在尝试执行“部署”时导致异常“oracle.apps.fnd.isg.client.IREPException”。请查看服务提供商日志了解更多详情

我查看了日志文件,但没有找到任何信息。我注意到的一件事是,我能够使用带有 VARCHAR2 数据类型的简单输出参数来部署 Web 服务。但是当有一个基于表类型定义的参数时,我收到上述错误。我定义的表类型输出参数如下,它以 json 数组的形式返回数据。

TYPE XRCL_TMS_PICKED_ORDERS1 是 ROCELL 表。XRCL_TMS_PICKED_ORDERS1%ROWTYPE INDEX BY BINARY_INTEGER;

最好是在使用12c数据库的应用程序上,可以毫无问题地部署Web服务。

【问题讨论】:

    标签: oracle soa


    【解决方案1】:

    我通过在 12c 和 19c 版本的数据库中查找集合类型兼容性的原因解决了这个问题。

    在 12c 下面的 plsql 集合类型声明工作正常:

    TYPE type_name IS TABLE OF Table_Name%ROWTYPE INDEX BY BINARY_INTEGER;

    但是在上面 19c 中声明的 plsql 集合类型有以下错误。尝试重新编译集合类型后发现此错误:

    PLS-00355:在此上下文中不允许使用 pl/sql 表

    在 19c 下面的声明工作正常(创建类型为嵌套表):

    创建类型 type_name 作为对象

    ( column_name 数据类型 );

    创建类型 type_name_nt 作为 type_name 的表;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-03
      • 1970-01-01
      • 1970-01-01
      • 2021-02-17
      • 2015-12-13
      • 2020-05-13
      • 2021-08-23
      • 2019-05-31
      相关资源
      最近更新 更多