Oracle公开带参数的打包过程
我试图通过OracleORD公开oracle打包过程,但得到404错误 我的包裹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
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