Oracle公开带参数的打包过程

Oracle公开带参数的打包过程,oracle,oracle-ords,Oracle,Oracle Ords,我试图通过OracleORD公开oracle打包过程,但得到404错误 我的包裹 create or replace PACKAGE MY_PACKAGE AS -- define the package spec TYPE userChanges IS RECORD ( id number(32,0), partner_id varchar2(256 byte), application_user varchar2(256 byte), applicatio

我试图通过OracleORD公开oracle打包过程,但得到404错误

我的包裹

create or replace PACKAGE MY_PACKAGE AS  -- define the package spec
 TYPE userChanges IS RECORD
(
    id number(32,0),
    partner_id varchar2(256 byte),
    application_user varchar2(256 byte),
    application_name varchar2(256 byte),
    transaction_start timestamp(6) with local time zone, 
    transaction_end timestamp(6) with local time zone , 
    service_id varchar2(256 byte), 
    exec_time number(32,0), 
    error_code varchar2(256 byte),
    operation varchar2(256 byte), 
    type varchar2(512 byte), 
    name varchar2(256 byte),
    value varchar2(4000 byte)
);

TYPE userTable IS TABLE OF userChanges
INDEX BY BINARY_INTEGER;

PROCEDURE GetUserSnapShot(P_START_TIME in timestamp, 
                        P_END_TIME  in timestamp, 
                        P_MAX_ROWS  in int,
                        myTable in out userTable);
END MY_PACKAGE;
包体

create or replace PACKAGE BODY MY_PACKAGE AS  -- define the package body
 PROCEDURE getusersnapshot(P_START_TIME in timestamp, 
                        P_END_TIME  in timestamp, 
                        P_MAX_ROWS  in int,
                        myTable in out userTable)
 AS
   rec  userChanges; 
BEGIN
rec.id := 1;
rec.partner_id    := 'test';
rec.application_user   := 'ABCDEF';
rec.application_name := 'ddd';
rec.transaction_start   := SYSDATE;
rec.transaction_end   := SYSDATE;
rec.service_id   := 'ddd';
rec.exec_time   := 2;
rec.error_code   := 'dddd';
rec.operation   := 'ddd';
rec.type   := 'ddd';
rec.name   := 'ddd';
rec.value   := 'ddd';
myTable(1) := rec;
END;
END MY_PACKAGE;
这个包通过执行以下SQL的SQL开发人员启用了rest服务

DECLARE
  PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN

ORDS.ENABLE_OBJECT(p_enabled => TRUE,
                   p_schema => 'TESTUSER',
                   p_object => 'MY_PACKAGE',
                   p_object_type => 'PACKAGE',
                   p_object_alias => 'my_package',
                   p_auto_rest_auth => FALSE);

commit;
END;
这将成功执行

我的帖子网址是http://localhost:8083/ords/testuser/my_package/getusersnapshot 用body
{}
作为我的测试。 这将产生错误404。
但是,当我使用不带参数的过程执行包时,它工作得很好。我这里有什么问题?

试试我这里有一个例子@thatjeffsmith谢谢,是的,我说url正在工作。获取了500个错误`信息:绑定索引处的参数时发生错误:【调用,开始“MY_PACKAGE”。【GETUSERSNAPSHOT】(/*in:P_START_TIME*/?,/*in:P_END_TIME*/?,/*in:P_MAX_ROWS*/?,/*inout:MYTABLE*/?);END;,[P_MAX_ROWS,in,interface oracle.dbtools.raptor.datatypes.DataValue],[P_开始时间,in,接口oracle.dbtools.raptor.datatypes.DataValue],[P_结束时间,in,接口oracle.dbtools.raptor.datatypes.DataValue],[MYTABLE,inout,接口oracle.dbtools.raptor.datatypes.DataValue]].知道什么是错误的数据类型吗?检查您的日期值,它们应该是zulu格式的…查看ORD如何输出日期,然后镜像该格式。向我们展示您的帖子正文jsonTry我这里有一个示例@thatjeffsmith谢谢,是的说url正在工作。获取500错误`信息:绑定索引4处的参数时发生错误:[调用,开始“MY_PACKAGE”。“GETUSERSNAPSHOT”(/*in:P_START_TIME*/?,/*in:P_END_TIME*/?,/*in:P_MAX_ROWS*/?,/*inout:MYTABLE*/?);END;,[P_MAX_ROWS,in,interface oracle.dbtools.raptor.DataType.DataValue],[P_START_TIME,in,interface oracle.dbtools.raptor.DataType.DataValue],[P_END_TIME,in,interface oracle.dbtools.raptor.datatypes.DataValue],[MYTABLE,inout,interface oracle.dbtools.raptor.datatypes.DataValue]。知道什么是错误的数据类型吗?检查你的日期值,它们应该是祖鲁格式的…看看ords如何输出日期,然后镜像该格式。向我们展示你的帖子正文json