Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Simulate a http post in java.net

 
Maky Chopra
Ranch Hand
Posts: 149
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,
Desparatly need some hlp here.. Any tips will be greatly appreciated. Did not get an answer anywhere else, so thought of posting in this forum..
I had posted related q's some time back.. Basically, I'm writing a java program to download a text file from the internet.. Its an https connection to a SSL 2.0 server
These were the first two hurdle.. I learnt to use JSSE to connect thru https but SSL 2.0 is not supported.. Then I got a third party package called ICE SSL/ ICE STORM BROWSER and using its jar files (they inherit from java.net), I was able to connect and download from SSL 2.0
Now, if an authentication box pops up, I can use the java.net.authenticator class to authenticate myself, right ? Can this class be used for html (form based) logins ?
The problem is that my url is, say, https://www.mc.com/rpps/cgi-bin/download.cgi?file.txt and I get the html of the download.cgi file (please login.. ) when I run my program.
Please help..
Any way I can authenticate myself to the site for this purpose ?
 
code Monkey
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
For posting html forms (e.g. for login) you can use codes like
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
PrintWriter out
= new PrintWriter(connection.getOutputStream());
//getting username and pwd from an already initialized properties file.
Enumeration enum = nameValuePairs.keys();
while (enum.hasMoreElements())
{ String name = (String)enum.nextElement();
String value = nameValuePairs.getProperty(name);
char ch;
if (enum.hasMoreElements()) ch = '&'; else ch = '\n';
out.print(name + "="
+ URLEncoder.encode(value) + ch);
}
out.close();
//if you now need to read what the server resopnds when u log in.....
BufferedReader in;
try
{ in = new BufferedReader(new
InputStreamReader(connection.getInputStream()));
........
.......
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic