出现以下消息的意外错误:对于输入字符串:“”

An unexpected error with the following message occurred: For input string: ""

当在 APEX 的页面中执行 AJAX 进程时,我从 ORDS 收到以下错误:

An unexpected error with the following message occurred: For input string: ""

我用来打印对 HTTP 流的响应的代码是:

DECLARE
    L_HTTP_STATUS NUMBER;
    L_HTTP_REASON_PHRASE VARCHAR2(32767);
BEGIN
    -- ...
    APEX_JSON.INITIALIZE_OUTPUT(
        P_HTTP_HEADER => FALSE,
        P_INDENT => 4
    );
    OWA_UTIL.MIME_HEADER(
        CCONTENT_TYPE => 'application/json',
        BCLOSE_HEADER => FALSE,
        CCHARSET => NULL
    );
    OWA_UTIL.STATUS_LINE(
        NSTATUS => L_HTTP_STATUS,
        CREASON => L_HTTP_REASON_PHRASE,
        BCLOSE_HEADER => TRUE
    );
    APEX_JSON.OPEN_OBJECT();
    -- ...
    APEX_JSON.CLOSE_OBJECT();
END;

虽然看起来没什么问题,但我仍然遇到错误。

原来错误是 L_HTTP_STATUS 变量从未被设置,因此是 NULL,并且 ORDS 不喜欢 NULL 状态 headers,虽然我想知道为什么 OWA_UTIL.STATUS_LINE 首先允许 NULL 。无论如何,希望它能帮助遇到同样错误的人。