?
Solved

POST from HttpsURLConnection

Posted on 2006-04-06
3
Medium Priority
?
906 Views
Last Modified: 2012-05-05
I am trying to create web client for  form-based logging  .
here is the piece of code I am using.
All values I am getting by parsing start up form.
When looking at Post request in IEWatch one line is different:
(Method-Line)      POST /c/a/WirelessLogIn HTTP/1.1
I am using just       connection.setRequestMethod("POST");   without any parameters
I am not sure  if this makes any difference.

Here is what  I am posting:
      String body    ="USERID="+v_account+"&PASSWORD="+v_pin
                     +"&login=Login&pagehandler=PHWirelessLogIn&DV_DATA="+v_data+"&USERGROUP=ACCT&COMPANY=ABCD";
      url = new URL(t_url+body);
      connection = (HttpsURLConnection)url.openConnection();
      connection.setDoOutput(true);
      connection.setDoInput(true);
      connection.setUseCaches(false);
      connection.setDefaultUseCaches(false);
      connection.setFollowRedirects(false);
      connection.setInstanceFollowRedirects(false);
      connection.setRequestMethod("POST");
      //connection.setRequestProperty("Accept", "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/msword, */*");
      connection.setRequestProperty("Accept", "*/*");
      connection.setRequestProperty("Referer", "https://www.abcd.com/c/a/WirelessLogInForm");
      connection.setRequestProperty("Accept-Language" , "en-us");
      connection.setRequestProperty("Accept-Encoding", "gzip, deflate");
      connection.setRequestProperty("Content-Type" , "application/x-www-form-urlencoded") ;
      connection.setRequestProperty("User-Agent",  "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)");
      connection.setRequestProperty("Host", "www.abcd.com");
     // connection.setRequestProperty("Content-Length","120");    
      connection.setRequestProperty("Connection", "Keep-Alive");
      connection.setRequestProperty("Cache-Control", "no-cache");
      connection.setRequestProperty("Cookie", cookie);
     connection.connect();

 The response is :

<HTML>
<TITLE>Page Unavailable</TITLE><BODY>
/html/errors/404.html is unavailable, please contact system administractor.
</BODY>
</HTML>

As you can see I've commented out one line       // connection.setRequestProperty("Content-Length","120");  
because with this line the sessin hangs and I am getting no response at all .
How to solve this issue ???
Thx
   


0
Comment
Question by:lez60
  • 2
3 Comments
 
LVL 92

Accepted Solution

by:
objects earned 2000 total points
ID: 16397760
>     String body    ="USERID="+v_account+"&PASSWORD="+v_pin
>                     +"&login=Login&pagehandler=PHWirelessLogIn&DV_DATA="+v_data+"&USERGROUP=ACCT&COMPANY=ABCD";

your passing the parameters as a GET.
For a post you need to instead write them to the connections output sytream

http://javaalmanac.com/egs/java.net/Post.html
0
 

Author Comment

by:lez60
ID: 16397849
Yes !!!  It works , Thanks !!. I've seen this example before but it looks like not quite got it before. POST and GET is a little bit confusing,
somtimes I was using GET method to login, and it worked, but in this situation it had to bePOST .

Great, I am really approciated

 
0
 
LVL 92

Expert Comment

by:objects
ID: 16397886
no worries :)
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
Suggested Courses
Course of the Month16 days, 1 hour left to enroll

850 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question