POST from HttpsURLConnection

Posted on 2006-04-06
Medium Priority
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
      url = new URL(t_url+body);
      connection = (HttpsURLConnection)url.openConnection();
      //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);

 The response is :

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

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 ???

Question by:lez60
  • 2
LVL 92

Accepted Solution

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


Author Comment

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

LVL 92

Expert Comment

ID: 16397886
no worries :)

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