AN style="FONT-SIZE: 10pt; BACKGROUND: white; COLOR: red; FONT-FAMILY: Verdana; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial">
Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML.
Clientes Web com HttpClient
Parte1: Conceitos da API e Requisições GET
Conheça o HttpClient da Apache, que facilita o uso direto do protocolo http em aplicações Java, começando pela configuração, conceitos, métodos GET e proxies
O http é um dos pilares da WWW e provavelmente o protocolo mais usado na internet. Dependem dele navegadores e servidores web, web services baseados em SOAP e muitos outros serviços e aplicações importantes.
Em Java há facilidades para o desenvolvimento de aplicações de rede o JDK 1.0 no pacote java.net, mas, embora o suporte a http seja maduro, ele é limitado. Para aplicações que exigem recursos mais sofisticados, uma solução excelente é o HttpClient, do projeto Jakarta Commons da Apache (já apresentado brevemente no artigo “Iniciando com Commons” da Edicao 26). O HttpClient é uma API que simplifica o desenvolvimento de aplicações clientes que se comunicam via http. Dentre suas características, destacam-se:
· Suporte a HTTP 1.0 e 1.1, HTTPS (SSL sobre HTTP) e comunicação através de proxies HTTP.
· Implementação de todos os métodos HTTP: GET, POST, PUT, DELETE, HEAD, OPTIONS e TRACE.
· Suporte aos modos de autenticação Basic, Digest e NTLM.
· Manipulação de cookies
· Capacidades de manipulação de formulários multipartes (permitindo, por exemplo, upload de arquivos)
· Possibilidade de definir time-outs
· Suporte a conexões persistentes
A versão de produção atual é a 2.x.y, porém a equipe do HttpClient encoraja o uso da nova versão 3.0-RC3, que está bastante estável e traz mudanças significativas na API. Os exemplos e funcionalidades mostrados neste artigo são baseados na nova versão.
Para instalar o HttpClient, baixe e descompacte a versão mais recente e duas dependências (Commons Codec e Commons Logging, ambos também do Jakarta Commons; veja links). Recomenda-se o J2SE 1.4 ou superior, o qual já inclui a API JSSE (para o suporte a HTTPS); se o seu JDK é mais antigo, será necessário instalar o pacote com esta API separadamente.
Os jars do httpClient e das suas dependências deverão ser adicionadas ao classpath, ou incluídos como bibliotecas do seu IDE, para que seja possível compilar e executar os programas de exemplo.
Conceitos gerais
Podemos resumir a utilização do HttpClient em alguns passos básicos:
1. Criar um objeto HttpClient
2. Opcionalmente, obter e configurar um objeto HttpState
3. Criar um objeto que representa o método http a ser executado (GetMethod, PostMethod etc.)
4. Executar o método http (através do objeto HttpClient)
5. Ler a resposta
...