Closed ghost closed 9 years ago
Você consegue anexar um código que simule o problema? Um teste unitário, talvez?
Passando o código a seguir pode lhe ajudar?
@RequestMapping(value = "/nfeTeste", method = RequestMethod.GET)
public void printHome() throws IOException, Exception {
ConfiguracaoSefaz configuracaoSefaz = new ConfiguracaoSefaz(true);
NFStatusServicoConsultaRetorno retorno = new WSFacade(configuracaoSefaz).consultaStatus(NFUnidadeFederativa.PR);
System.out.println(retorno.getStatus());
System.out.println(retorno.getMotivo());
}
Você está utilizando OpenJDK no Debian/Ubuntu? Dei uma googlada e parece q tem alguma relação com isso, tenta reinstalar os certificados na jdk.
Parece q alguns usuarios de openjdk reinstalaram e nao tiveram mais problema com isso:
sudo apt-get install --reinstall ca-certificates-java
Não, utilizo a JVM com Windows. Porém me dei conta que não possuo o .jks utilizado no método getCadeiaCertificados(), será que pode ser isso?
Com certeza!
O que pode ser esse erro já que o próprio framework trata o trustAnchors setando os valores para o mesmo no construtor de WSFacade?
WSFacade.class (construtor):
public WSFacade(final NFeConfig config) throws IOException { System.setProperty("jdk.tls.client.protocols", "SSLv3,TLSv1"); System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol"); System.setProperty("javax.net.ssl.trustStoreType", "JKS"); System.setProperty("javax.net.ssl.trustStore", config.getCadeiaCertificados().getAbsolutePath()); System.setProperty("javax.net.ssl.keyStoreType", "PKCS12"); System.setProperty("javax.net.ssl.keyStore", config.getCertificado().getAbsolutePath()); System.setProperty("javax.net.ssl.keyStorePassword", config.getCertificadoSenha()); this.wsLoteEnvio = new WSLoteEnvio(config); this.wsLoteConsulta = new WSLoteConsulta(config); this.wsStatusConsulta = new WSStatusConsulta(config); this.wsNotaConsulta = new WSNotaConsulta(config); this.wsCartaCorrecao = new WSCartaCorrecao(config); this.wsCancelamento = new WSCancelamento(config); this.wsConsultaCadastro = new WSConsultaCadastro(config); this.wsInutilizacao = new WSInutilizacao(config); }