从pl / sql里面调用webservice

时间:2015-04-20 08:36:10

标签: oracle plsql ora-24247

我在ACl下有用户名,acl已分配给主机。 但我在试图联系

时收到错误http_req

ACL已分配给主持人

SELECT * FROM dba_network_acls;
1   *.mer.com           /sys/acls/fine_grain_access_http.xml         968743177C0D29D9E040A8C02F1C05F0
已将

用户添加到ACL并使用connect和resolve prov

SELECT * FROM dba_network_acl_privileges where principal=’SCOTT’
ACL                                  ACLID                                  PRINCIPAL   PRIVILEGE   IS_GRANT    INVERT  
1   /sys/acls/fine_grain_access_http.xml    968743177C0D29D9E040A8C02F1C05F0        PRASHANT-MISHRA connect         true        false       
2   /sys/acls/fine_grain_access_http.xml    968743177C0D29D9E040A8C02F1C05F0        PRASHANT-MISHRA resolve     true        false       

下面是我要执行的代码部分

DECLARE
req UTL_HTTP.req;
resp UTL_HTTP.resp;
v_URL VARCHAR2(2000);
VALUE VARCHAR2(32767);
Rpt_id NUMBER:=38660;
part1 VARCHAR2(200);
part2 VARCHAR2(100);
part3 VARCHAR2(100);
username VARCHAR2(100):='PRASHANT-MISHRA';
pass VARCHAR2(100):='Summer@2015';
BEGIN
part1:='http://jira.mer.com/sr/jira.issueviews:searchrequest-xml/';
part2:='/SearchRequest-38660tempMax=3000&';
part3:='field=key';
v_URL:=part1||part2||Rpt_id||part3;

req := UTL_HTTP.begin_request(v_URL,'GET','HTTP/1.1');

UTL_HTTP.set_authentication(req, username, pass);
UTL_HTTP.set_header (req,'Content-Type','application/xml; charset=utf-8');
/*UTL_HTTP.set_header(req, ‘User-Agent’, ‘Mozilla/4.0′);*/
resp := UTL_HTTP.get_response(req);
LOOP
UTL_HTTP.read_line(resp, value, TRUE);
DBMS_OUTPUT.PUT_LINE(value);
END LOOP;
UTL_HTTP.end_response(resp);
END;

错误:

  

ORA-29273:HTTP请求失败
   ORA-06512:at" SYS.UTL_HTTP",第1130行    ORA-24247:访问控制列表(ACL)拒绝的网络访问    ORA-06512:第19行

1 个答案:

答案 0 :(得分:1)

在运行add_priv以将用户的私有权添加到ACL后,我忘记了提交更改。