HTTP request using PL/SQL
I've the following header and http request.
POST http://deab/DexNETWebServices_4_0_0_4/LoginService.svc HTTP/1.1
MIME-Version: 1.0
Content-Type: multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1";start-info="application/soap+xml"
VsDebuggerCausalityData: uIDPo5F/qXRc4YJImqB6Ard30cQAAAAAAjIXinpIVUulXLJOsSG7yyv7Lf2yHgpHlIxvc6oeqaAACQAA
Host: deab
Content-Length: 1017
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding: 8bit
Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml"
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">http://tempuri.org/ILoginService/LoginByUserName</a:Action><a:MessageID>urn:uuid:cf410a05-23d4-4b92-a22c-329cbc19fbe7</a:MessageID><a:ReplyTo><a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address></a:ReplyTo><a:To s:mustUnderstand="1">http://deab/DexNETWebServices_4_0_0_4/LoginService.svc</a:To></s:Header><s:Body><LoginByUserName xmlns="http://tempuri.org/"><systemId>19e0ddb4-5fa5-41ee-b624-aea762865a6c</systemId><strName>FirmwareUpdateLogQueryWorker</strName><productId>0af39a3e-6549-485b-872f-b73413203998</productId><password>abc</password></LoginByUserName></s:Body></s:Envelope>
--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1--
I'm using the following code to set the header from PL/SQL.
l_http_req := UTL_HTTP.begin_request ('http://deab/DexNETWebServices_4_0_0_4/LoginService.svc', 'POST', 'HTTP/1.1');
UTL_HTTP.set_header (
l_http_req,
'Content-Type',
'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1";start-info="application/soap+xml"');
UTL_HTTP.set_header (l_http_req, 'Content-Length', LENGTH (l_request));
But UTL_HTTP.get_response returns the error 400 Bad Request. How do I set MIME-Version and VsDebuggerCausalityData from the header?
Thank you for your help on this.
Here is the complete code that returns the 400 Bad Request error. Thanks for your help.
DECLARE
l_request CLOB;
l_http_req UTL_HTTP.req;
l_http_resp UTL_HTTP.resp;
v_buffer VARCHAR2 (32767);
p_status_code NUMBER (9);
p_error_message VARCHAR2 (32767);
p_response CLOB;
BEGIN
l_request :=
'--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding: 8bit
Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml"
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">http://tempuri.org/ILoginService/LoginByUserName</a:Action><a:MessageID>urn:uuid:cf410a05-23d4-4b92-a22c-329cbc19fbe7</a:MessageID><a:ReplyTo><a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address></a:ReplyTo><a:To s:mustUnderstand="1">http://deab/DexNETWebServices_4_0_0_4/LoginService.svc</a:To></s:Header><s:Body><LoginByUserName xmlns="http://tempuri.org/"><systemId>'
|| '19e0ddb4-5fa5-41ee-b624-aea762865a6c'
|| '</systemId><strName>'
|| 'FirmwareUpdateLogQueryWorker'
|| '</strName><productId>'
|| '0af39a3e-6549-485b-872f-b73413203998'
|| '</productId><password>'
|| 'abc'
|| '</password></LoginByUserName></s:Body></s:Envelope>
--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1--';
DBMS_OUTPUT.put_line ('request ' || l_request);
l_http_req :=
UTL_HTTP.begin_request (
'http://deab/DexNETWebServices_4_0_0_4/LoginService.svc',
'POST',
'HTTP/1.1');
UTL_HTTP.set_header (
l_http_req,
'Content-Type',
'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1";start-info="application/soap+xml"');
UTL_HTTP.set_header (l_http_req, 'Content-Length', LENGTH (l_request));
UTL_HTTP.set_header (l_http_req, 'MIME-Version', '1.0');
UTL_HTTP.set_header (
l_http_req,
'VsDebuggerCausalityData',
'uIDPo5F/qXRc4YJImqB6Ard30cQAAAAAAjIXinpIVUulXLJOsSG7yyv7Lf2yHgpHlIxvc6oeqaAACQAA');
UTL_HTTP.write_text (l_http_req, l_request);
DBMS_LOB.createtemporary (p_response, FALSE);
l_http_resp := UTL_HTTP.get_response (l_http_req);
BEGIN
LOOP
UTL_HTTP.read_text (l_http_resp, v_buffer, 32767);
DBMS_OUTPUT.put_line (v_buffer);
DBMS_LOB.writeappend (p_response, LENGTH (v_buffer), v_buffer);
END LOOP;
EXCEPTION
WHEN UTL_HTTP.end_of_body
THEN
NULL;
END;
UTL_HTTP.end_response (l_http_resp);
p_status_code := l_http_resp.status_code;
p_error_message := l_http_resp.reason_phrase;
p_response := REPLACE (p_response, '<', '<');
p_response := REPLACE (p_response, '>', '>');
DBMS_OUTPUT.put_line (
'Status: ' || p_status_code || '-' || p_error_message || ': ' || p_response);
END;
Similar Messages
-
How to send a https request using jsf
hi
Can anybody tell a sample how to send a https request using JSF ...
thanksPrefix the request URI with the https protocol.
The answer is too easy and straightforward that I guess that you mean something else. If you just want to know how to configure an SSL environment for your own webapplication, refer to the Java EE tutorial chapter 28: http://java.sun.com/javaee/5/docs/tutorial/doc/ -
Logging of Forwarded HTTP Requests using RequestDispatcher in Weblogic
Can anyone help me on this?
Logging of Forwarded HTTP Requests using RequestDispatcher in Weblogic
Access Log File:
1. I have a servlet(S1) which decides which JSP to be published based on
some logic. If I try to forward the request from a servlet to a JSP or to
another servlet from within S1 using RequestDispatcher, it doesn't get
logged in the access log, only the initial request to S1 gets logged, when I
switch on HTTP logging by setting weblogic.httpd.enableLogFile to true. Is
there any way of logging this forwarding of request in the access log?
2. If there is no solution for (1), I woiuld like to make entries into the
access log file of weblogic in the common log format, when I forward a
request to a JSP or a servlet throught the RequestDispatcher, so that I can
use standard tools to analyze the logfile.The two issues with this are (i)
is there any weblogic service that gives a handle to the access log file
like the LogServicesDef which gives a handle to the weblogic log file. (ii)
Is there any utility class available that can format a URL pointing to a JSP
to a string confirming to the common log format.The log4j:ERROR messages are not coming from Log4j 2 and are most likely from Log4j 1.x. Somehow Log4j 1.x must be getting the log4j2 configuration.
-
I've the following header and http request.
POST http://deab/DexNETWebServices_4_0_0_4/LoginService.svc HTTP/1.1
MIME-Version: 1.0
Content-Type: multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1";start-info="application/soap+xml"
VsDebuggerCausalityData: uIDPo5F/qXRc4YJImqB6Ard30cQAAAAAAjIXinpIVUulXLJOsSG7yyv7Lf2yHgpHlIxvc6oeqaAACQAA
Host: deab
Content-Length: 1017
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding: 8bit
Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml"
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">http://tempuri.org/ILoginService/LoginByUserName</a:Action><a:MessageID>urn:uuid:cf410a05-23d4-4b92-a22c-329cbc19fbe7</a:MessageID><a:ReplyTo><a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address></a:ReplyTo><a:To s:mustUnderstand="1">http://deab/DexNETWebServices_4_0_0_4/LoginService.svc</a:To></s:Header><s:Body><LoginByUserName xmlns="http://tempuri.org/"><systemId>19e0ddb4-5fa5-41ee-b624-aea762865a6c</systemId><strName>FirmwareUpdateLogQueryWorker</strName><productId>0af39a3e-6549-485b-872f-b73413203998</productId><password>abc</password></LoginByUserName></s:Body></s:Envelope>
--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1--
I'm using the following code to set the header from PL/SQL and call the request. But UTL_HTTP.get_response returns the error 400 Bad Request.
DECLARE
l_request CLOB;
l_http_req UTL_HTTP.req;
l_http_resp UTL_HTTP.resp;
v_buffer VARCHAR2 (32767);
p_status_code NUMBER (9);
p_error_message VARCHAR2 (32767);
p_response CLOB;
BEGIN
l_request :=
'--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1'
|| CHR (13)
|| 'Content-ID: <http://tempuri.org/0>'
|| CHR (13)
|| 'Content-Transfer-Encoding: 8bit'
|| CHR (13)
|| 'Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml"'
|| CHR (13)
|| CHR (13)
|| '<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">http://tempuri.org/ILoginService/LoginByUserName</a:Action><a:MessageID>urn:uuid:cf410a05-23d4-4b92-a22c-329cbc19fbe7</a:MessageID><a:ReplyTo><a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address></a:ReplyTo><a:To s:mustUnderstand="1">http://deab/DexNETWebServices_4_0_0_4/LoginService.svc</a:To></s:Header><s:Body><LoginByUserName xmlns="http://tempuri.org/"><systemId>'
|| '19e0ddb4-5fa5-41ee-b624-aea762865a6c'
|| '</systemId><strName>'
|| 'FirmwareUpdateLogQueryWorker'
|| '</strName><productId>'
|| '0af39a3e-6549-485b-872f-b73413203998'
|| '</productId><password>'
|| 'abc'
|| '</password></LoginByUserName></s:Body></s:Envelope>'
|| CHR (13)
|| '--uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1--';
DBMS_OUTPUT.put_line ('request ' || l_request);
l_http_req := UTL_HTTP.begin_request ('http://deab/DexNETWebServices_4_0_0_4/LoginService.svc', 'POST', 'HTTP/1.1');
UTL_HTTP.set_header (l_http_req, 'MIME-Version', '1.0');
UTL_HTTP.set_header (
l_http_req,
'Content-Type',
'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:e4c19840-745d-45b2-90ca-12d71be4cfd9+id=1";start-info="application/soap+xml"');
-- UTL_HTTP.set_header (l_http_req, 'Content-ID', '<http://tempuri.org/0>');
-- UTL_HTTP.set_header (l_http_req, 'Content-Transfer-Encoding', '8bit');
UTL_HTTP.set_header (
l_http_req,
'VsDebuggerCausalityData',
'uIDPo5F/qXRc4YJImqB6Ard30cQAAAAAAjIXinpIVUulXLJOsSG7yyv7Lf2yHgpHlIxvc6oeqaAACQAA');
UTL_HTTP.set_header (l_http_req, 'Content-Length', LENGTH (l_request));
-- UTL_HTTP.set_header (l_http_req,
-- 'SOAPAction',
-- 'http://tempuri.org/ILoginService/LoginByUserName');
UTL_HTTP.write_text (l_http_req, l_request);
DBMS_LOB.createtemporary (p_response, FALSE);
l_http_resp := UTL_HTTP.get_response (l_http_req);
BEGIN
LOOP
UTL_HTTP.read_text (l_http_resp, v_buffer, 32767);
DBMS_OUTPUT.put_line (v_buffer);
DBMS_LOB.writeappend (p_response, LENGTH (v_buffer), v_buffer);
END LOOP;
EXCEPTION
WHEN UTL_HTTP.end_of_body
THEN
NULL;
END;
UTL_HTTP.end_response (l_http_resp);
p_status_code := l_http_resp.status_code;
p_error_message := l_http_resp.reason_phrase;
p_response := REPLACE (p_response, '<', '<');
p_response := REPLACE (p_response, '>', '>');
DBMS_OUTPUT.put_line (
'Status: ' || p_status_code || '-' || p_error_message || ': ' || p_response);
END;
Thank you for your help on this.HI Michiel
I am also trying to achieve something similar to that. I am trying to call a web service that sends an xml attachment over MTOM? Kindly, let me know if this was achievable from your end? I mean how did the issue got resolved.
thanks
vijay -
How to post multiple http requests using a single http connection in java
I am using the httpurlconnection class and it allows only to post one request on a connection. I require to post multiple http requests by opening a single connection. Code examples please. Thanx in advance.
Hi
I found this article through Google. I hope it helps a little
http://www.developer.com/tech/article.php/761521
D -
Getting the Details from a HTTP Request using C#
Hi,
Suppose, a user submits a form with some details as Address, Phone Number etc.. to a Web Application. On the client side, I need to have a proxy to intercept this http request message being sent to the Server and get the details in it like Phone number and
Address in this case and display them to user in a pop up box for confirming and if he clicks YES, then only I should forward the request to Web Server/Web Application.
If the user feels that the information shown to him is not correct he can Click NO and the request will not be sent to the Server. Anyone know how to use this in DOTNET WEB APPLICATIONS?
I need to write code for the Proxy Part, I am not sure how to handle HTTP messages and from where to start with. Any help would be of great help.
Thanks
K.V.N.PAVANhttp://forums.asp.net/
Yu have many sections to choose from concerning Web based solutions. -
MapViewer: send admin request using pl/sql
Hello,
i have a reqirement to send mapviewer admin requests to the mapviewer server using pl/sql.
I found a java class in Re: How can I refresh the map cache for Oracle Maps ? , but i'm struggeling to replicate this functionality in pl/sql, without using java.
Are there any examples out htere how to send admin requests to mapviewer using pl/sql?
Thanks in advance,
DirkYou may use the UTL_SMTP package to send e-mail via the SMTP protocol. This package has been available in the Oracle database since Oracle 8i Release 2 (8.1.6). For more information, please check its documentation in "Oracle8i Supplied PL/SQL Packages Reference".
-
Multiple HTTP requests using single HTTPService component
Hi,
I am having one requirement, I need to use a single HTTPService component to send request to a same and single ASP.net multiple times.
How can I acheive that..? I know that I can acheive this by sending one request at a time and after the "result" event is called for the first request then sending the second request and so on...
But if I do so then it will be delayed response as I need to wait until the result handler for the previous request is called...
So how do I do this..?
Any help greatly appreciated....:)
Thanks in advance..
Thanks,
Bhasker Chariyep, the setting works when set to 10. Seemed to not work when set to 20. Anyways, summary is "long polling" and Flex
or Flash are not good compatriates. So, you will need to work out your own mechanism on the server or client
side to limit the sockets used/wasted. Painful but true.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import com.util.HTTPServiceProxy;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.http.HTTPService;
private var urlOpenTasksDefault:String = HTTPServiceProxy.servercontext + "/blahblah?something=somethign";
private var waitRequestPart:String = "&wait=5000&lastUpdate=" // long polling period for now for testing
private var iResponses:int;
private function runTest(urlString:String):void{
var service:HTTPService = new HTTPService();service.url= urlString;
service.resultFormat =
"e4x";service.method =
"get";service.contentType=
"application/xml";service.addEventListener(
"result", httpResult);service.addEventListener(
"fault", httpFault);service.send();
public function httpResult(event:ResultEvent):void {
trace("httpResult " + iResponses++ );}
public function httpFault(event:FaultEvent):void {
trace("httpFault " + (iResponses++) + event.fault.faultString);}
private function test1(evt:Event):void {iResponses=0;
var reqs:int = parseInt(requests.text);
for( var i:int=0; i<reqs; i++ ){runTest(urlOpenTasksDefault);
private function test2(evt:Event):void {iResponses=0;
var reqs:int = parseInt(requests.text);
for( var i:int=0; i<reqs; i++ ){runTest(urlOpenTasksDefault+waitRequestPart+
"0");}
]]>
</mx:Script>
<mx:Label text="Requests"/>
<mx:TextInput id="requests"/>
<mx:Button label="Test Requests-Responses" click="test1(event)"/>
<mx:Button label="Test Long Polling" click="test2(event)"/></mx:Application> -
HTTPS request signed by client certificate from PL/SQL procedure
Hi All, please help.
The PL/SQL procedure connects to different web services, using both HTTP/HTTPS, for HTTPS sever certificates were used. Everything was OK.
The next service requires client to sign requests with client certificate. I made the client certificate, sign it by CA, store it in Wallet Manager.
Is here the possibility to send signed HTTPS request from PL/SQL?
If not, how to do it using Java and encapsulate for PL/SQL?
Please answer ASAP!!!It is pretty straight-forward to make HTTPS requests with UTL_HTTP.
To do so, you first need to create an Oracle wallet on the database server host with Oracle Wallet Manager. If your database resides on Windows, I believe a short-cut has been created in the Windows menu. On Linux, it can be invoked from $ORACLE_HOME/bin/owm.
Once the wallet is created, you need to make an additional call to utl_http.set_wallet(<wallet-directory>, <wallet-password>) before any utl_http.request or utl_http.begin_request calls. The <wallet-directory> is the wallet directory where you will find the cwallet.sso and/or ewallet.p12 files, using the format "file:/<wallet-directory>". For example:
utl_http.set_wallet('file:/home/oracle/wallets/my_wallet/', '123456');
When an Oracle wallet is created, it is pre-populated with common certificate authorities' certificates (e.g. Verisign). In the event that the server certificate of the HTTPS host is not signed by one of those common certificate authorities, you need to import the additional certificate authority's certificate in your wallet using Oracle Wallet Manager. -
PL/SQL posting to HTTP request
Hi
As part of a web application I am developing, I need to generate an HTTP post from a PL/SQL package. The problem I am having is that the message going out is not properly formatted and is being rejected by the listening application (in this case, WebCT)
The MIME message should be formatted like this. (this is what I get when I use Perl to generate the call...)
POST /webct/systemIntegrationApi.dowebct HTTP/1.1
Host: roach:4041
Connection: Keep-Alive, TE
TE: trailers, deflate, gzip, compress
User-Agent: RPT-HTTPClient/0.3-3E
Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress
Content-type: multipart/form-data; boundary=WebCT_Enterprise_API_boundary
Content-length: 1506
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="adapter"
ims
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="ACTION"
import
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="OPTION"
unrestrict
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="SCTMODE"
OFF
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="TIMESTAMP"
1091141996
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="AUTH"
3D 1F DC E0 F7 15 5A 1F F4 99 CA 70 D4 68 1C 57
--WebCT_Enterprise_API_boundary
Content-Disposition: form-data; name="FILENAME"; filename="baseline_import.xml"
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE ENTERPRISE SYSTEM "IMS-EP01.dtd">
<ENTERPRISE>
<PROPERTIES>
<DATASOURCE>McGill University SCT Banner</DATASOURCE>
<TYPE>Initial Creation</TYPE>
<DATETIME>2000-00-00T12:00:00</DATETIME>
</PROPERTIES>
<GROUP>
<SOURCEDID>
<SOURCE>Banner 2000 SCT Banner</SOURCE>
<ID>6536.200409</ID>
</SOURCEDID>
<DESCRIPTION>
<SHORT>HIST-666-001</SHORT>
</DESCRIPTION>
<RELATIONSHIP myrelationship="3">
<SOURCEDID>
<SOURCE>Banner 2000 SCT Banner</SOURCE>
<ID>6537.200409</ID>
</SOURCEDID>
</RELATIONSHIP>
</GROUP>
</ENTERPRISE>
WebCT_Enterprise_API_boundary
HTTP/1.1 200 OK
Date: Thu, 29 Jul 2004 21:56:27 GMT
Server: Apache/2.0.49 (Unix) DAV/2 mod_ssl/2.0.49 OpenSSL/0.9.6m mod_jk/1.2.3-dev
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html
35
Success: Import file (baseline_import.xml) complete.
0
My PL/SQL code that tries to build the outgoing call is
req := utl_http.begin_request('http://atlas.cc.mcgill.ca:8900/webct/systemIntegrationApi.dowebct','POST', 'HTTP/1.1');
utl_http.write_text(req,'Content-type: multipart/form-data; boundary=WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="adapter"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
'ims' || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="ACTION"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
'import' || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="OPTION"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
'unrestrict' || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="SCTMODE"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
'OFF' || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="TIMESTAMP"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
timestamp || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="AUTH"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
mac || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary' || CHR(13)|| CHR(10) ||
'Content-Disposition: form-data; name="FILENAME"; filename="xlist.xml"' || CHR(13)|| CHR(10) ||
'' || CHR(13)|| CHR(10) ||
total_xml_string || CHR(13)|| CHR(10) ||
'--WebCT_Enterprise_API_Boundary--' || CHR(13)|| CHR(10));
resp := utl_http.get_response(req);
utl_http.read_text(resp, val);
utl_http.end_response(resp);
When I watch the network traffic generated by this PL/SQL I do not have any carriage returns which makes WebCT to believe that the message does not carry the proper data and returns Fatal Failure(99): Invalid URL arguments...
Is there somewhere where I can see sample code for placing HTTP requests using the utl_http package? Or if I am doing something obviously wrong (I am new at this whole PL/SQL thing...) please let me know.
Thank you
BogdanIf UTL_HTTP.SET_TRANSFER_TIMEOUT has no effect, probably your hang is due to the fact that the machine is completely down and inaccessible.
As the name suggests, SET_TRANSFER_TIMEOUT only controls the timeout when UTL_HTTP succeeds in making a connection to the remote Web server and it times out the request when no more response is received by certain time while the connection is not closed by the remote server either.
In your case, you probably need a connect-timeout which isn't provided by UTL_HTTP (yet). -
HTTP requests by sockets rather than Bridge/Bridgetalk?
Has anyone brought this up before? I came across this article that's an implementation of HTTP requests using sockets rather than Bridge's HttpConnection class/object, so this should execute w/o dependency on Bridge/Bridgetalk I believe. I haven't tried it out myself. Thought I'd share. Also not sure if this article was already previously mentioned somewhere within the Adobe forums.
Script for Adobe Creative Suite/Indesign – Http Request’s GET POST with Javascript | Ivo NascimentoHas anyone brought this up before? I came across this article that's an implementation of HTTP requests using sockets rather than Bridge's HttpConnection class/object, so this should execute w/o dependency on Bridge/Bridgetalk I believe. I haven't tried it out myself. Thought I'd share. Also not sure if this article was already previously mentioned somewhere within the Adobe forums.
Script for Adobe Creative Suite/Indesign – Http Request’s GET POST with Javascript | Ivo Nascimento -
Can I creatre HTML DB region contain d ynamic mapviewer request using JBC?
Hi all
I've tried sample code about create mapviewer request using PL/SQL that passed via HTML DB region...and success because it request a predifined map and theme of mapviewer...
But when I tried to insert some row to create dynamic theme using </jdbc> tag in this code ...I couldn't get the result..and the region just show a base_map same like before I inserted the jdbc request...
My question is...Could I collaborate jdbc queries in PL/SQL the create HTML DB region? If it's impossible...how is the sollution to ..for example put some point feature (i.e. store location) on our base map that PL/SQL created...I assume to not using predefine theme for this store location....or can I used cursor to populate these 'stores' coordinates and treat them as variable in PL/SQL maprequest????
Please tell me the extremely complete solution because it's very important for my life (I will die if I can't solve the problem....arrgghhhh)
Regard!
AdhiHi all
I've tried sample code about create mapviewer request using PL/SQL that passed via HTML DB region...and success because it request a predifined map and theme of mapviewer...
But when I tried to insert some row to create dynamic theme using </jdbc> tag in this code ...I couldn't get the result..and the region just show a base_map same like before I inserted the jdbc request...
My question is...Could I collaborate jdbc queries in PL/SQL the create HTML DB region? If it's impossible...how is the sollution to ..for example put some point feature (i.e. store location) on our base map that PL/SQL created...I assume to not using predefine theme for this store location....or can I used cursor to populate these 'stores' coordinates and treat them as variable in PL/SQL maprequest????
Please tell me the extremely complete solution because it's very important for my life (I will die if I can't solve the problem....arrgghhhh)
Regard!
Adhi -
Http Request through URL Connection?
Hi ,
Iam using an Applet (under JRE 1.3.0). Iam trying to send a Http Request using URL Connection. It is working fine . However, if the response time of the server is more than 3 minutes , the Response is not coming back to the server and the Applet is in a loop trying to read from the Server. I have observed that the request is sent to the server and it is processed successfully.
When I test it in my local devp. machine it is working fine till 15 minutes which is my requirement.
Can anybody suggest what should be the possible reasons and any workaround for it?
Regards,
TejoKiran.YIam copying the code fragments for the Applet Iam using . Is it a problem with the code? I heard that the URLConnection never times out . How is that it is not able to read the Response?
<CODE >
<HttpMessage>
public class HttpMessage {
URL servlet = null;
Hashtable headers = null;
public HttpMessage(URL servlet) {
this.servlet = servlet;
public InputStream sendGetMessage(Properties args) throws IOException {
String argString = ""; // default
if (args != null) {
argString = "?" + toEncodedString(args);
URL url = new URL(servlet.toExternalForm() + argString);
// Turn off caching
URLConnection con = url.openConnection();
con.setUseCaches(false);
// Send headers
sendHeaders(con);
return con.getInputStream();
private void sendHeaders(URLConnection con) {
if (headers != null) {
Enumeration enum = headers.keys();
while (enum.hasMoreElements()) {
String name = (String) enum.nextElement();
String value = (String) headers.get(name);
con.setRequestProperty(name, value);
</HttpMssage>
<Code used to Read the Response.>
URL url = new URL(getDocumentBase(),"/ccls/test/delay.jsp");
HttpMessage msg = new HttpMessage(url);
InputStream in = msg.sendGetMessage(null);
char[] buff = new char[2048];
int bytesRead;
int ch;
StringBuffer sbtextbox = new StringBuffer("");
DataInputStream data = new DataInputStream(
new BufferedInputStream(in));
String line;
while ((line = data.readLine()) != null) {
sbtextbox.append(line+"\r\n");
</Code used to Read the Response.>
</CODE> -
How to make a http request from a pl/sql procedure(URGENT)
I need to make a http request from a pl/sql procedure, can any one tell me which built-in package and which procedure/function we serve my need?
Thanks in advance.
Ram Prasad.You should use UTL_HTTP package, but before it install the JVM into DB
-
Pl/sql call to a WS: HTTP request error
Hello,
I am trying to call a web service from a pl/sql package and am getting this error from the Apps (10g database)
ORACLE error 29273 in FDPSTP
Cause: FDPSTP failed due to ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1029
ORA-28862: SSL connection failed
ORA-06512: at "APPS.CM_TEST_WS_INVOKE", line 19
ORA-06512: at line 1
Could anyone help me resolve this so that I can call the web service?
Any help would be greatly appreciated.
-CC
Edited by: user11121346 on May 1, 2012 10:17 AMHi,
As this is a SSL call, you need to configure the wallet. Basically if it is a One-way SSL (only webservice server gets authenticated), you need to follow the following steps.
1.) Extract the Public Certificate of the Target Web service from using the browser
2.) Import this certificate in the Oracle Wallet using Oracle Wallet Manager
3.) The schema user trying to invoke the service should have proper ACL permissions
4.) Test your connection from the R12 SQL directly using below SQL statement. If below is success you can wrap the service call in a package.
select utl_http.request('https://<service URL>',
NULL, --Proxy Settings if any
'file:<Wallet_Location>', -- on R12
<Wallet_Password>
from dual;Let me know if you still face any issues.
Regards,
Neeraj Sehgal
Maybe you are looking for
-
Problem in BAPI_DOCUMENT_CHANGE2 with attachment
Hi Friends, I am using the BAPI for updating the status from In work to Release in DMS wit attachment. While executing BAPI_DOCUMENT_CHANGE2 we are facing the problem. I attach a document in CV01N. I enter the details of the document in document file
-
Service Requested what does that mean?
Hello everyone, i checked the repair service of my Ipod touch 4g and is says since two days "Service Requested". Do i need to send my Ipod first ? Or what do i need to do ?
-
Any Ideas ERROR U44M1P7 Update to Camera RAW 8.1(CS6) plug-in Fails to Update
Any Ideas ERROR U44M1P7 Update to Camera RAW 8.1(CS6) plug-in Fails to Update
-
How to call BI infocube / query in ABAP
Hi guys, don't blame me for asking such simple questions. I am not familiar with BI, my requirement is to execute BI infocube / query and display the result in webDynpro ABAP. I know I can call BI query passing parameters and there are some web tools
-
How to instantiate javax.sql.rowset.CachedRowSet?
When trying to instantiate javax.sql.rowset.CachedRowSet, I get the foll error... javax.sql.rowset.CachedRowSet is abstract; cannot be instantiated Any solutions plz...