Httpunit - problema para executar o evento onblur

7 respostas
J

Oi pessoal,

estou desenvolvendo uma ferramenta para consultar o site da justiça federal de sao paulo.
Estou setando os campos para a consulta, porem quando dou o submit, a pagina de retorno é a da consulta.
Acredito que o problema esta com o evento onblur que exite no campo do CPF.
Aguem sabe como posso fazer executar o evento do input text do site, ou alguma ideia de como solucionar este problema.
Desde ja agradeço a atenção.

Segue meu codigo abaixo.

String site = <a href="http://www.jfsp.gov.br/csp/consulta/consinternet.csp">http://www.jfsp.gov.br/csp/consulta/consinternet.csp</a>”;

WebConversation wc = new WebConversation();

WebResponse wr;

try {

wr = wc.getResponse(site);		

WebForm wf = wr.getForms()[0]; // Get first form on page

System.out.println(wf.getName());

//Button [] b = wf.getButtons();					

WebForm form = wr.getFormWithName(formconsulta);

form.setParameter(seleSubsecao, 10);

form.setParameter(num_documento, [telefone removido]);	

form.setParameter(selePolo,3);

//b[0].click(); esse eh o botao consultar

form.submit();

wr = wc.getCurrentPage();

System.out.println("eh html " + wr.isHTML());

String resp = wr.getText();

System.out.println(resp);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (SAXException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

7 Respostas

T

De fato, como é que você pode obter esse tal valor ( "cspHttpServerMethod(‘U8lOirxEr4l9fo2y8Z3VraDSGXwWrpBbhfB2NLZWSQjfM6yzQ7AWNpCIuisgsqiZ3s0l6DxtboJDzOmRm2NDsA–&CSPCHD=0001000100013fnofJbp000562322795’,document.getElementById(‘num_processo’).value); ) ?
Parece a codificação em Base-64 de alguma coisa.

J

As funcoes js estao

vc sugere alguma solucao para esse problema??

obrigado

T

Acho que seu problema não é reimplementar o método Javascript (isso é trabalhoso mas é relativamente fácil, se você entender o que o Javascript está fazendo). O seu problema, na verdade, é puxar o valor que veio na página (aquele valor monstruoso em Base-64), e devolvê-lo para chamar uma espécie de “web service”.

J

Thingol obrigado pela atencao.
vc sabe como puxar o valor e devolve-lo para chamar o web service.
tem alguma coisa parecida para eu poder olhar e tentar implementar??

obrigado

T

Para puxar o valor, provavelmente você terá de pegar a resposta do servidor e, usando uma expressão regular (no seu caso é a alternativa mais simples), você pode localizar a tal string monstruosa, e separá-la.
Para reimplementar o que foi escrito em JavaScript, provavelmente você terá de trabalhar um pouco com java.net.URLConnection.

J

obrigado vou tentar…
se pensar em algo mais ou diferente me avisa…

valeu abraço

sdbmcc

Olá jr_78,

Vc conseguiu resolver o problema?

Grato!

Criado 6 de abril de 2009
Ultima resposta 23 de abr. de 2012
Respostas 7
Participantes 3