Oracle错误"ORA-28759:打开文件失败"请求utl_http包时 [英] Oracle error "ORA-28759: failure to open file" when requesting utl_http package

查看:983
本文介绍了Oracle错误"ORA-28759:打开文件失败"请求utl_http包时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法执行以下语句-

DECLARE
    lo_req  UTL_HTTP.req;
    lo_resp UTL_HTTP.resp;
  BEGIN
    UTL_HTTP.SET_WALLET ('file: C:\app\wallet','abcd@1234');
    lo_req := UTL_HTTP.begin_request('https://wordpress.org/');
    lo_resp := UTL_HTTP.get_response(lo_req);
    dbms_output.put_line(lo_resp.status_code);
   UTL_HTTP.end_response(lo_resp);
END;

我的钱包路径为C:\ app \ wallet,密码为abcd @ 1234.
执行此代码时,显示以下错误:

My wallet path is C:\app\wallet and password is abcd@1234.
When execute this code, display following error:

ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1130
ORA-28759: failure to open file

我该如何解决?

推荐答案

UTL_HTTP.SET_WALLET()的文档关于路径有两点要说:

The documentation for UTL_HTTP.SET_WALLET() has two things to say about the path:

  1. 在Windows file:c:\WINNT\Profiles\username\WALLETS
  2. 上格式是这样的
  3. 必须可以从数据库服务器访问钱包路径.
  1. The format is like this on Windows file:c:\WINNT\Profiles\username\WALLETS
  2. The wallet path must be accessible from the database server.

很显然,您的代码在第一点上失败了,因为在file关键字和驱动器号之间有一个空格.

Clearly your code fails the first point, as you have a space between the file keyword and the drive letter.

也许第二点也适用:数据库服务器上是否有驱动器?

Perhaps the second point applies too: is that a drive on your database server?

这篇关于Oracle错误"ORA-28759:打开文件失败"请求utl_http包时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆