Como fazer uma conexão HTTP em java?

10 respostas
A

Sou novato e estou precisando fazer uma conexão HTTP em java e gostaria de que se alguém tiver um exemplo detalhado de como se faz isso por favor me responda, se for possível explicar, desde já agradeço.

10 Respostas

Rafael_Steil

De uma olhada no HTTPClient, em http://jakarta.apache.org/commons/httpclient/

O manual dele eh bom. Abaixo segue um exemplo:

HttpClient client = new HttpClient();
HttpMethod method = new GetMethod("http://www.uol.com.br");
client.executeMethod(method)
System.out.println(new String(method.getResponseBody()));

Isso vai conectar no UOL e pegar o conteudo da home page deles.

Rafael

bombbr

De uma lida neste artigo do GUJ

http://www.guj.com.br/java.tutorial.artigo.5.1.guj

[]'s

santoro

Seguindo a linha do Rafael olha esse exemplo

http://jakarta.apache.org/commons/httpclient/tutorial.html

drcelo

Pessoal onde posso baixar as libs para usar este

HttpClient client = new HttpClient();   
            HttpMethod method = new GetMethod("http://www.uol.com.br");   
            client.executeMethod(method);   
            System.out.println(new String(method.getResponseBody()));
kaique

O nome dessa API chama-se Jakarta Commons Http Client. O link para o site do projeto está no post do Rafael Steil.

[]'s.

drcelo

Não encontrei qual pagina vc baixou?

Hellmanss

http://hc.apache.org/downloads.cgi

¬¬’

[]’

drcelo

Valeu

drcelo

Alguem ja passou por isto?

  • I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
  • Retrying request
    java.net.ConnectException: Connection timed out: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80)
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122)
    at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
drcelo

Bueno povo desenvolvi a seguinte classe:

GetMethod metodo = null;
        HttpClient cliente;
        String htmlResposta = "";
        int status;
        try {
            cliente = new HttpClient();
            metodo = new GetMethod("http://www.google.com");
            status = cliente.executeMethod(metodo);
            System.out.println("DEBUG 1... status "+status);
            if (status == HttpStatus.SC_OK) {
                System.out.println("DEBUG IF... status "+status);
                htmlResposta = metodo.getResponseBodyAsString();
                System.out.println("DEBUG IF... htmlResposta "+htmlResposta);
            }
            else {
                System.out.println("Erro: " + status + " - " + HttpStatus.getStatusText(status));
            }
        } catch (IOException e) {
               System.err.println("Erro de I/O: " + e.getMessage());
        }    finally {
              metodo.releaseConnection();
        }

e estou enfrentando o seguinte problema:

  • I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect

Pesquisando encontrei muitos casos para este mais nenhuma solução, alguem ja passou por isto?

Criado 28 de julho de 2005
Ultima resposta 19 de mai. de 2009
Respostas 10
Participantes 7