Quantcast
Channel: SCN : Popular Discussions - Standards
Viewing all articles
Browse latest Browse all 628

Calling Sap Webservices from Oracle Database (Pl/Sql)

$
0
0

I have created a procedure calling webservices from oracle (by UTL_HTTP).

When I call a test WebService works fine but when I call one of the sap with authentication does not work and don't returns any error (only empty value on the end)

would appreciate any help

 

declare

        p_request                  soap_api.t_request;

                               TYPE t_response IS RECORD

                               (

                               doc                        XMLTYPE,

                               envelope_tag  VARCHAR2(30)

                               );

                               l_response         t_response;

                               l_envelope        VARCHAR2(32767);

                               l_http_request   UTL_HTTP.req;

                               l_http_response  UTL_HTTP.resp;

                               v_result                       varchar2(4000);

begin

                                 p_request := soap_api.new_request('urn:ZWsEam005CreatOrUpdOrder','xmlns="' ||

                                               'http://ONLYTest.corp.ad/sap/bc/srt/wsdl/bndg_E048C7C2793BA7F1ACB0005056BD0002/wsdl11/allinone/ws_policy/document?sap-client=200' || '"');

 

        p_request.body := p_request.body||'<Descricao>teste</Descricao>';

        p_request.body := p_request.body||'<Empresa>1001</Empresa>';

        p_request.body := p_request.body||'<NumOrderEam>566</NumOrderEam>';

        p_request.body := p_request.body||'<Status>CRIAR</Status>';

        p_request.body := p_request.body||'<TipoOrdem>Z003</TipoOrdem>';

 

                l_envelope := '<'||p_request.envelope_tag||':Envelope xmlns:'||p_request.envelope_tag||'="http://schemas.xmlsoap.org/soap/envelope/" ' ||

                                               'xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style">'||

             '<'||p_request.envelope_tag||':Body>' ||

               '<'||p_request.method||'>' ||

                   p_request.body ||

               '</'||p_request.method||'>' ||

             '</'||p_request.envelope_tag||':Body>' ||

           '</'||p_request.envelope_tag||':Envelope>';

   

                               l_http_request := UTL_HTTP.begin_request('http://ONLYTest.corp.ad/sap/bc/srt/wsdl/bndg_E048C7C2793BA7F1ACB0005056BD0002/wsdl11/allinone/ws_policy/document?sap-client=200','POST','HTTP/1.1');

                               utl_http.Set_Authentication (l_http_request,'ANYTHING','THISISPWD','Basic', false);

                               UTL_HTTP.set_header(l_http_request, 'Content-Type', 'text/xml');

                               UTL_HTTP.set_header(l_http_request, 'Content-Length', LENGTH(l_envelope));

                               UTL_HTTP.set_header(l_http_request, 'SOAPAction', 'urn:ZWsEam005CreatOrUpdOrder');

                               UTL_HTTP.write_text(l_http_request, l_envelope);

                               l_http_response := UTL_HTTP.get_response(l_http_request);

                               UTL_HTTP.read_text(l_http_response, l_envelope);

                               UTL_HTTP.end_response(l_http_response);

 

                               l_response.doc := XMLTYPE.createxml(l_envelope);

                                l_response.envelope_tag := p_request.envelope_tag;

                               l_response.doc := l_response.doc.extract('/'||l_response.envelope_tag||':Envelope/'||l_response.envelope_tag||':Body/child::node()',                                           'xmlns:'||l_response.envelope_tag||'="http://schemas.xmlsoap.org/soap/envelope/"');

 

                               v_result := l_response.doc.extract('//child::text()').getstringval();

END;

/


Viewing all articles
Browse latest Browse all 628

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>