Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle Invoke REST Service von pl/sql

Haben Sie überprüft, ob der DBA die Ausführung von utl_http erlaubt hat? Versuchen Sie es einfach, um sicherzugehen:

select utl_http.request('http://ipaddresshere:9099/api/batchProcess/1') from dual;

Wenn Sie einen Fehler erhalten, bitten Sie den DBA, die entsprechende Berechtigung zu erteilen:

grant execute on utl_http to your_oracle_user_name
grant execute on dbms_lock to user_name



BEGIN
  DBMS_NETWORK_ACL_ADMIN.create_acl (
    acl          => 'local_sx_acl_file.xml', 
    description  => 'A test of the ACL functionality',
    principal    => 'put your user_name',
    is_grant     => TRUE, 
    privilege    => 'connect',
    start_date   => SYSTIMESTAMP,
    end_date     => NULL);
end;

begin
  DBMS_NETWORK_ACL_ADMIN.assign_acl (
    acl         => 'local_sx_acl_file.xml',
    host        => 'localhost', 
    lower_port  => 9002,
    upper_port  => NULL);    
end;

Ich hoffe, es hilft.

Tschüss,

Morteza Fakoorrad