Boa tarde galera.
Estou participando de um projeto desktop em java, que terá que acessar a URL da sefaz nacional de NFe, postar a chave de acesso no html e recuperar os dados da nota para montar um XML. Estou com problemas quanto ao postar a chave e recuperar os dados : seguem abaixo parte do código de POST (O que ocorre simplesmente é não postar a chave e continuar lendo somente o primeiro html) :
//Método que retorna a conexão da URL
public static HttpURLConnection htmlConection() throws IOException
{
try
{
URL url = new URL(
"http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=");
HttpURLConnection urlcon = (HttpURLConnection) url.openConnection();
urlcon.setRequestMethod("POST");
urlcon.setRequestProperty("Content-type","application/x-www-form-urlencoded");
urlcon.setDoOutput(true);
urlcon.setDoInput(true);
urlcon.setUseCaches(false);
return urlcon;
}
catch (HTTPException ex)
{
System.err.println("Erro de acesso à URL" + ex.getMessage());
ex.printStackTrace();
}
return null;
}
}
//Método de POST do html
public class PostHtml
{
protected HttpURLConnection urlConnect;
protected String chave;
protected DataOutputStream dos;
protected static final String Parametro = "ContentPlaceHolder1_txtChaveAcessoCompleta";
public PostHtml(HttpURLConnection urlConn, String chaveAcesso)
{
this.urlConnect = urlConn;
this.chave = chaveAcesso;
}
public HttpURLConnection postHtml ()
{
String dados = null;
try
{
if (chave != null)
{
dados = URLEncoder.encode(
"ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta", "UTF-8")
+ "="
+ URLEncoder.encode(
chave,
"UTF-8");
}
dos = new DataOutputStream(urlConnect.getOutputStream());
dos.writeBytes(dados);
dos.flush();
dos.close();
return urlConnect;
}
catch (Exception e)
{
System.err.println("Erro ao efetuar Post" + e.getMessage());
e.printStackTrace();
}
return null;
}
}
Alguem poderia me ajudar ?