Post na url

4 respostas
herbertins

boa tarde pessoal,

estão a dois dias tentando fazer um robozinho e não tá rolando.

Eu preciso entrar na pagina do suframa e jogar um cnpj e pegar uma INSCRICAO SUFRAMA que o site gera na hora, mas quando eu tento fazer o post retorna erro 302. Eu acho que é por causa do parametro "jsessionid". O sistema está funcioando para varias outras url, mas essa tem esse jsessionid e não está funcionando.

eu sou novo na area de desenvolvimento Web estou meio perdido.

gostaria de saber para que serve o jsessionid e se tem alguma coisa haver eu não conseguir fazer o post dessa forma [url]https://servicos.suframa.gov.br/cadastroweb/listarInscricoesCnpjCpfSitCadastral.do?method=listarInscricoes&cnpjcpf=34525444000162[/url]

abaixo está o html do formulário do botão.

<form name="CnpjCpfRecadForm" method="post" action="/cadastroweb/listarInscricoesCnpjCpfSitCadastral.do;jsessionid=74FF8FA3C6EE503C1E51C32DB99D3091.node1" id="form1">
			<input type="hidden" name="method" value="listarInscricoes"> 
			

      <!--Comeco do erro-->
 
			<table width="100%" border="0" cellpadding="0" cellspacing="1"> 
				<tr> 
					<td> 
						<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> 
							<tr> 
								<td valign="bottom" > <br>
                              <strong>CNPJ/CPF:&nbsp;</strong>&nbsp;&nbsp; <input type="text" name="cnpjcpf" maxlength="14" size="20" value="" onkeypress="soNumero();" class="texto"> 
                            </td> 
							</tr> 
						</table> 
						<br> 
						<table width="100%" border="0" cellpadding="0" cellspacing="0"> 
							<tr align="center"> 
								<td> 
									<div align="right"> 
										<input type="button" class="bt-p" onClick="submeterVM('/servicos/atualizarRotinas.do','')" value="Retornar"> 
									</div> 
								</td> 
								<td> 
									<div align="left"> 
										<input type="button" class="bt-p" onClick="submeter()" value="Avançar"> 
									</div> 
								</td> 
							</tr> 
						</table> 
					</td> 
				</tr> 
			</table> 
			</form>

obs: Eu faço tudo via código esse html eu só recuperei do site para ver oq o botão faz quando clicado, e o sistema está funcionando para todas as outras urls menos para esse eu imagino que não estou pegando a url certa ou eh o jsessionid.

abs galera

4 Respostas

T

“;jsessionid=74FF8FA3C6EE503C1E51C32DB99D3091.node1” é uma forma de um servidor Java associar um usuário a uma sessão (jsessionid) e nesse caso (deve ser um servidor WebSphere) a um determinado nó de um web farm, sem usar cookies.
Experimente não mandar esse troço, já que a sessão de onde você copiou esse ID já deve ter expirado faz muito tempo.

herbertins

então se eu não mandar eu não consigo o resultado.

eu preciso pegar o session e jogar dentro de algum atributo do method, sei la para fazer essa consulta.

eu faço isso para pegar o html

protected ByteArrayOutputStream verifyResponseCode(HttpMethod method) {
		ByteArrayOutputStream bao = null;
		int status = method.getStatusCode();
		if (status == HttpStatus.SC_OK) {
			try {
				//byte[] responseBody = method.getResponseBody();
				InputStream is = method.getResponseBodyAsStream();
				//bao = new ByteArrayOutputStream();
				//bao.write(responseBody);
				bao = getConnInputStream(is);
			} catch (Exception e) {
				logger.error("", e);
			}
		}

		return bao;
	}

acho que tenho que passar esse valor para o method antes de fazer isso InputStream is = method.getResponseBodyAsStream();

herbertins

será que rola fazer isso???

herbertins

alguem sabe me dizer se o Jsessionid pega primeiro os valores do cookie e descarta os parametros

Criado 12 de junho de 2008
Ultima resposta 13 de jun. de 2008
Respostas 4
Participantes 2