declare
    req   UTL_HTTP.REQ; 
    resp  UTL_HTTP.RESP; 
begin
req := UTL_HTTP.BEGIN_REQUEST('http://192.168.1.80/');
resp := UTL_HTTP.GET_RESPONSE(req); 
end;以上代码执行没任何问题,但我建立储存过程,然后对存储过程执行就报错了,并且,存储过程如果不包含UTL_HTTP包的使用语句时,也不会有问题create or replace PROCEDURE test
as
    req   UTL_HTTP.REQ; 
    resp  UTL_HTTP.RESP; 
begin
req := UTL_HTTP.BEGIN_REQUEST('http://192.168.1.80/');--在这就异常了
resp := UTL_HTTP.GET_RESPONSE(req); 
end;

解决方案 »

  1.   

    UTL_HTTP.BEGIN_REQUEST('192.168.1.80');
      

  2.   

    那确实不好用啊,你给的那一行代码和我的有区别吗?没有.而且,我现在也试过了,一样的情况
    出现异常错误断点  位于 UTL_HTTP.pls 的行 -1。
    $Oracle.EXCEPTION_ORA_29273: 
    ORA-29273: HTTP 请求失败
    ORA-06512: 在 "SYS.UTL_HTTP", line 1029
    ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝
      

  3.   

    是不是权限问题,存储过程在哪个schema下面,前面那个匿名程序块又是在哪个schema下执行的。
      

  4.   

    都是同一个schema,嘿嘿,搞定了,以后有同样问题直接找我吧,哈哈
      

  5.   

    我也碰到了这样的问题,急需解决。在我个人电脑上没有问题,布置到数据库服务器就报“ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝”,希望楼主或知道的人能给予帮助
      

  6.   

    请问大侠 我是resp := UTL_HTTP.GET_RESPONSE(req);  
    到这句就exception了 
    并且我不知道怎么看异常原因
    或者是上述你解决的方案是什么呀
      

  7.   

     utl_http.begin_request(url_tranSit,
                     'GET',
                     utl_http.HTTP_VERSION_1_1);-29273---ORA-29273: HTTP 请求失败
    ORA-06512: 在 "SYS.UTL_HTTP", line 1130
    ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝请大神指教