Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 03-13-2008, 10:55 AM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Wink [SOLVED] http request
Hi all,

For the first time I'm going to do this.

I have a http URL, and I want to make a request through that URL. Response is a String, which I want to use for further processing.

Any comments appreciate.

Eranga
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #2 (permalink)  
Old 03-13-2008, 11:17 AM
aibtus's Avatar
Member
 
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
aibtus is on a distinguished road
Send a message via Yahoo to aibtus Send a message via Skype™ to aibtus
Default
WHAT DO YOU MEAN BY "Response is as String, which I want to use for further processing. "

D you want to make a URL request via a web browser and get the response for further processing before rendering onto the browser itself or what?
Bookmark Post in Technorati
Reply With Quote
  #3 (permalink)  
Old 03-13-2008, 11:34 AM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Ok, I have a URL where I want to make a request. On that request, the URL, actually the server gives a response. Simply a IP which my network is belongs to.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #4 (permalink)  
Old 03-13-2008, 11:38 AM
aibtus's Avatar
Member
 
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
aibtus is on a distinguished road
Send a message via Yahoo to aibtus Send a message via Skype™ to aibtus
Smile
Originally Posted by Eranga View Post
Ok, I have a URL where I want to make a request. On that request, the URL, actually the server gives a response. Simply a IP which my network is belongs to.
Cool. Now I understand.

Ok, what technology are you using ie: JSP's, Servlets etc???
Bookmark Post in Technorati
Reply With Quote
  #5 (permalink)  
Old 03-13-2008, 12:27 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Actually I just use simple Java technologies. And I have done it myself. It's not difficult at all. Simply call URL.openStream() to get the replay to a stream buffer. Then store it in a String variable for later user.

So, my problem is solved. Thanks for all who replay and view my post.

Eranga
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #6 (permalink)  
Old 03-13-2008, 12:29 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Just three lines to use.

Code:
            URL myRequest = new URL(my_url_goes_here);
            BufferedReader in = new BufferedReader(new InputStreamReader(myRequest.openStream()));
            String str = in.readLine();
            in.close();
What you think of it.

Eranga.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #7 (permalink)  
Old 03-13-2008, 02:23 PM
aibtus's Avatar
Member
 
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
aibtus is on a distinguished road
Send a message via Yahoo to aibtus Send a message via Skype™ to aibtus
Thumbs up
Originally Posted by Eranga View Post
Just three lines to use.

Code:
            URL myRequest = new URL(my_url_goes_here);
            BufferedReader in = new BufferedReader(new InputStreamReader(myRequest.openStream()));
            String str = in.readLine();
            in.close();
What you think of it.

Eranga.

It looks simple enough and you say It works... I love it!!
Is the class URL a custom class --- if not, can you give us the full package name. It may come in handy in some other projects. If it is, can you highlight the implementation..

Nice code though!
Bookmark Post in Technorati
Reply With Quote
  #8 (permalink)  
Old 03-14-2008, 04:46 AM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Actually nothing much I used. Just import import java.net.URL;

Rather than, you have to handle all the exceptions. You want the full code which I have work on, if so I'll put it here after completing all.

Me too, love this code. It's so simple, really simply. Even you handle all the exceptions, only need to write around 10 to 15 lines.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #9 (permalink)  
Old 03-17-2008, 04:19 PM
aibtus's Avatar
Member
 
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
aibtus is on a distinguished road
Send a message via Yahoo to aibtus Send a message via Skype™ to aibtus
Question
Are you still going to put the full code as highlighted earlier, or you intend on sending a private msg?
Bookmark Post in Technorati
Reply With Quote
  #10 (permalink)  
Old 03-19-2008, 10:37 AM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Aah,

Actually I'm saying about the exception handling. That's it. Ok, I'll put my code here.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #11 (permalink)  
Old 04-08-2008, 11:39 AM
DonCash's Avatar
Moderator
 
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
DonCash will become famous soon enoughDonCash will become famous soon enough
Default
Hey aibtus - Here is a full code example:

Code:
import java.net.*;
import java.io.*;

class httpconnect {

public static void main(String[] args) throws Exception {

URL url = new URL("http://www.google.co.uk/");

URLConnection spoof = url.openConnection();

spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );

BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));

String strLine = "";

while ((strLine = in.readLine()) != null) {

        System.out.println(strLine);
		
    }
in.close();
  }
}
Note the extra bit of code:

Code:
spoof.setRequestProperty( 
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );
Websites like Google block connections to their site from programs other than web browsers. With this bit of code you can trick sites like these into thinking the connection is coming from a web browser. Very handy!

If you wish to surf through a proxy server then you can also add this code to the top:

Code:
System.getProperties().put("proxySet", "true");
System.getProperties().put("proxyPort", "80");
System.getProperties().put("proxyHost", "my.proxyserver.co.uk");
__________________
Did this post help you? Please me!
Bookmark Post in Technorati
Reply With Quote
  #12 (permalink)  
Old 04-08-2008, 11:50 AM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Nice work, but no need to worry that much pal. Here is my code.

Code:
        try{
            URL myRequest = new URL(buildRequestURL());
            //URL myRequest = new URL(requestURL);
            BufferedReader inMessage = new BufferedReader(new InputStreamReader(myRequest.openStream()));
            String httpReplay = inMessage.readLine();
                System.out.println(httpReplay);
                return httpReplay;
            }
            inMessage.close();
        }
        catch(MalformedURLException ex){
            System.out.println(ex);
        }
        catch(IOException ex){
            System.out.println(ex);
        }
That's all. The replay caught here as a String.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #13 (permalink)  
Old 04-08-2008, 11:53 AM
aibtus's Avatar
Member
 
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
aibtus is on a distinguished road
Send a message via Yahoo to aibtus Send a message via Skype™ to aibtus
Default Way to go
Thanx a lot. I will try it out and best comment later.


Originally Posted by DonCash View Post
Hey aibtus - Here is a full code example:

Code:
import java.net.*;
import java.io.*;

class httpconnect {

public static void main(String[] args) throws Exception {

URL url = new URL("http://www.google.co.uk/");

URLConnection spoof = url.openConnection();

spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );

BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));

String strLine = "";

while ((strLine = in.readLine()) != null) {

        System.out.println(strLine);
		
    }
in.close();
  }
}
Note the extra bit of code:

Code:
spoof.setRequestProperty( 
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );
Websites like Google block connections to their site from programs other than web browsers. With this bit of code you can trick sites like these into thinking the connection is coming from a web browser. Very handy!

If you wish to surf through a proxy server then you can also add this code to the top:

Code:
System.getProperties().put("proxySet", "true");
System.getProperties().put("proxyPort", "80");
System.getProperties().put("proxyHost", "my.proxyserver.co.uk");
Bookmark Post in Technorati
Reply With Quote
  #14 (permalink)  
Old 04-08-2008, 11:55 AM
DonCash's Avatar
Moderator
 
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
DonCash will become famous soon enoughDonCash will become famous soon enough
Default
Quote:
Nice work, but no need to worry that much pal
Yeah I know... Just thought i'd add the extra code because you never know when you'll need it!

The code to trick websites into thinking you are a web browser needs to be used more and more nowdays as sites actively block connections.
__________________
Did this post help you? Please me!
Bookmark Post in Technorati
Reply With Quote
  #15 (permalink)  
Old 04-08-2008, 12:10 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Yes you are correct. At the time I need such a code, just to communicate with my other machine. Time to time I can develop it and I can use it as one of my libraries actually.

And also your code may really helpful to me develop my code segment.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #16 (permalink)  
Old 04-08-2008, 12:12 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Major thing I've forget to say is, default browser will be fired by the URL. Actually it bind with.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #17 (permalink)  
Old 04-08-2008, 12:24 PM
DonCash's Avatar
Moderator
 
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
DonCash will become famous soon enoughDonCash will become famous soon enough
Default
Cool Cool
__________________
Did this post help you? Please me!
Bookmark Post in Technorati
Reply With Quote
  #18 (permalink)  
Old 04-08-2008, 12:31 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Ok, I got one scenario few days back. Say the html code comes with newline characters. Something like this,
Code:
<html>
<head></Head>
</html>
Because of my readLine() only the <html> tag detected. How can I get whole the code. If I have that code as a single String it works.

Any idea you have?
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
  #19 (permalink)  
Old 04-08-2008, 12:36 PM
DonCash's Avatar
Moderator
 
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
DonCash will become famous soon enoughDonCash will become famous soon enough
Default
Yeah... Use this:

Code:
String strLine = "";

while ((strLine = in.readLine()) != null) {

  System.out.println(strLine);
		
}
This will display all the code from the HTML page as it loops through it.
__________________
Did this post help you? Please me!
Bookmark Post in Technorati
Reply With Quote
  #20 (permalink)  
Old 04-08-2008, 12:50 PM
Eranga's Avatar
Moderator
 
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
Eranga has a spectacular aura aboutEranga has a spectacular aura about
Send a message via Yahoo to Eranga
Default
Hmm, I got the point. Say I want to return that String, I mean the whole String. Then what is the easiest way to do it.
__________________
Use an appropriate Subject. "Help, urgent!" isn't one.
Someone helped you? their helpful post.
Help:Forums FAQ|How To Ask Questions The Smart WayResources:The Java Tutorials|Glossary for Java|NetBeans IDE|Sun DownloadsWeb:WritOnceTips:Is your IDE the best?|Which Application Server?
Bookmark Post in Technorati
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
respose with out request karthikiniyan Java Servlet 1 04-09-2008 04:06 PM
How to use request Scope in Spring JavaBean Java Tips 0 09-28-2007 01:46 PM
Generate XML request from web form sabatier XML 1 08-09-2007 08:53 PM
Help with request.getParameter() Albert Enterprise JavaBeans 1 07-13-2007 04:39 PM
HttpServletRequest request size Ed Java Servlet 2 07-02-2007 03:02 PM


All times are GMT +2. The time now is 01:46 AM.



VBulletin, Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2009, Crawlability, Inc.
Copyright ©2006 - 2007, www.java-forums.org