001: package br.com.igor.proxy.http;
002:
003: import java.io.IOException;
004:
005: import javax.swing.JOptionPane;
006:
007: import org.apache.commons.httpclient.HttpClient;
008:
009: /**
010: * Uma classe simples para testar funcionalidades da comunicação HTTP sob o GA. <p>
011: * Observar uso da classe {@link HttpClientFactory} para se obter uma instância
012: * de um objeto que implementa {@link HttpClient}.<p>
013: * Para acesso a sites externos, será necessário utilizar
014: * o método "setProxyAuthorization".<p>
015: * Para utilizar SSL (enderecos comecando com 'https://'), ver detalhes de configuracao
016: * descritos na documentacao da classe {@link HttpClientDefault}
017: */
018: public class HttpClientTest {
019:
020: public static void main(String[] args) {
021: //
022: // teste1();
023: teste2();
024: }
025:
026: public static void teste1() {
027: //A URL deve iniciar com o protocolo ex: http://
028: //String url = "http://www.apache.org";
029: //String url = "https://trade.bb.com.br/";
030: String url = "http://ditec.intranet.bb.com.br/APPS/apt/pad/des/ger/ga/ga.jsp";
031: GeneralHttpClient cli = HttpClientFactory.getInstance();
032: cli.setTimeout(15000);
033: cli.setRetryCount(2);
034: //cli.setProxyAuthorization("localhost", 8080, "F3568416", "xxxxxxx");
035: cli.initRequest(url, GeneralHttpClient.HTTPCLIENT_GET_METHOD);
036: enviar(cli);
037: //EXECUTA OUTRA VEZ USANDO MESMO OBJETO CLIENTE
038: //
039: cli.initRequest(url, GeneralHttpClient.HTTPCLIENT_POST_METHOD);
040: cli.addRequestHeader("header1", "texto header1");
041: cli.addRequestHeader("header2", "texto header2");
042: //cli.setPostRequestBody("conteudo do xml");
043: cli.addPostParameter("xml", "conteudo do xml");
044: cli.addPostParameter("xml2", "conteudo do xml2");
045: System.out.println("###SEGUNDA VEZ###");
046: enviar(cli);
047:
048: }
049:
050: public static void teste2() {
051: //A URL deve iniciar com o protocolo ex: http://
052: String url = "http://200.215.182.21/paginas/saldoextrato.asp?txtCartao=4058850081249014";
053: //String url = "https://trade.bb.com.br/";
054: //String url="https://www.econofinance.com.br/tr/econofinance/acesso/slvalidalogin.jsp" ;
055: //String url= "http://ditec.intranet.bb.com.br/APPS/apt/pad/des/ger/ga/ga.jsp";
056: GeneralHttpClient cli = HttpClientFactory.getInstance();
057: cli.setTimeout(15000);
058: cli.setRetryCount(2);
059: cli.setProxyAuthorization("cache.bancobrasil.com.br", 80,
060: "F4353008", JOptionPane.showInputDialog(null,
061: "Senha do SISBB"));
062: //cli.setServerAuthorization("f9138363","85179921");
063: cli.initRequest(url, GeneralHttpClient.HTTPCLIENT_POST_METHOD);
064: // cli.addPostParameter("numbacks","-1");
065: // cli.addPostParameter("ni_idioma","1");
066: // cli.addPostParameter("edt_esqueceu","");
067: // cli.addPostParameter("edt_login","f9138363");
068: // cli.addPostParameter("edt_senha","85179921");
069: // cli.addPostParameter("Entrar","Entrar");
070:
071: enviar(cli);
072: //EXECUTA OUTRA VEZ USANDO MESMO OBJETO CLIENTE
073: //
074: // url="https://www.econofinance.com.br/servlet/econofinance.EconoRedir?pagina=cotacoes_book_negocios.jsp&ativo=TNLP4&tipo=A";
075: //
076: // cli.initRequest(url,GeneralHttpClient.HTTPCLIENT_GET_METHOD);
077: //cli.addRequestHeader("header1","texto header1");
078: //cli.addRequestHeader("header2","texto header2");
079: //cli.setPostRequestBody("conteudo do xml");
080: //cli.addPostParameter("xml","conteudo do xml");
081: //cli.addPostParameter("xml2","conteudo do xml2");
082: // System.out.println("###SEGUNDA VEZ###");
083: // enviar(cli);
084: }
085:
086: private static void enviar(GeneralHttpClient cli) {
087: try {
088: int ret = cli.executeRequest();
089: if (ret != GeneralHttpClient.HTTPCLIENT_STATUS_OK) {
090: System.out.println("Deu erro: " + cli.getStatusCode()
091: + " " + cli.getStatusPhrase());
092: } else {
093: // System.out.println("------Headers------");
094: // System.out.println(cli.getResponseHeadersAsString());
095: System.out.println("------ Body ------");
096: System.out.println(cli.getResponseBody());
097: // System.out.println("------Footers------");
098: // System.out.println(cli.getResponseFootersAsString());
099: }
100: } catch (IOException e) {
101: e.printStackTrace();
102: }
103:
104: }
105: }
|