Galera, estou com um problema que tento resolver há 3 dias e até agora nada.
Seguinte, estou tentando implementar um maldito sistema de NFe da seguinte maneira:
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
System.setProperty("javax.net.debug", "ssl");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStore", "/home/evandro/nfe_homologacao.keystore");
System.setProperty("javax.net.ssl.keyStoreType", "PKCS12");
System.setProperty("javax.net.ssl.keyStore", "/home/evandro/certificado.pfx");
System.setProperty("javax.net.ssl.keyStorePassword", "********");
SOAPEnvelope reqEnv = new SOAPEnvelope();
Object[] params = new Object[]
{
"", ""
};
reqEnv.addBodyElement(new RPCElement("", "NfeConsultaNF", params));
Call call = new Call("https://homologacao.nfe.fazenda.sp.gov.br/nfeweb/services/nfeconsulta.asmx");
SOAPEnvelope respEnv = call.invoke(reqEnv);
E obtenho o seguinte erro:
HTTP Error 403.7 - Forbidden: SSL client certificate is required.
Pelo que entendi eu preciso enviar o meu certificado no SSL…já tentei enviar esse certificado de todo jeito e nada funciona…o mais legal é que pelo software do governo ele funciona e também consigo acessar o WSDL pelo navegador utilizando o meu certificado.
Galera, já pesquisei isso aqui no GUJ, o Google já cansou de me ver perguntando a mesma coisa e pra ser sincero não sei mais o que fazer…
Se alguém puder me ajudar eu agradeço.