我无法执行以下语句-
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。
执行此代码时,显示以下错误:
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1130
ORA-28759: failure to open file
我怎样才能解决这个问题?
documentation for UTL_HTTP.SET_WALLET()关于路径有两件事要说:
在 Windowsfile:c:\WINNT\Profiles\username\WALLETS
上的格式是这样的
Wallet 路径必须可从数据库服务器访问。
显然,您的代码在第一点失败,因为您在file
关键字和驱动器号之间有一个空格。
也许第二点也适用:是数据库服务器上的驱动器吗?
您需要为 cwallet.sso 和 ewallet.p12 文件的相应用户或组添加权限。如果您使用了 orakpi 实用程序,则可能不存在权限。
对于 Windows,
1.选择文件,单击鼠标右键,然后选择“属性”。
2.选择“安全”选项卡,然后单击“更改权限”。
3.单击添加位置,然后选择适当的位置。
4.在“选择用户或组”字段中,键入 ora_dba。单击“检查名称”按钮以验证 ora_dba 组是否存在。
5.单击“确定”,将显示“权限输入”对话框。
6.选中“完全控制”旁边的“允许”复选框,然后单击“确定”。
7.在“高级安全”对话框中,单击“应用”。
8.单击“确定”退出对话框。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(23条)