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…
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.[/quote]
Evandro, dê uma olhada na documentação da API javax.net.ssl e veja se realmente é possivel definir o keystore com um arquivo utilizando extensão *.pfx. Já que trata-se de um formato do Windows, talvez você tenha que extrair dele (arquivo) a chave privada. Não estou 100% certo, mas creio que é um caminho a seguir pois já vi problema semelhante em outro sistema.
Só pra constar…cheguei ao ponto de testar no Window$ e dá o mesmo erro…
Então acredito que o problema não seja o certificado .pfx…outra coisa utilizo este mesmo certificado no emissor de NF-e disponibilizado pela SEFAZ de SP e td funciona!
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.setProperty("javax.net.ssl.keyStoreType", "PKCS12");
System.setProperty("javax.net.ssl.keyStore", "c:\\certificado.pfx");//Aqui vem o arquivo do certificado do seu cliente
System.setProperty("javax.net.ssl.keyStorePassword", "123456");//Aqui a senha deste certificado
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStore", "c:\\keystore.keystore");//Aqui vem o arquivo criado através do comando keytool no passo 3
System.setProperty("javax.net.ssl.trustStorePassword", "123456");//Aqui a senha deste keystore
o que vem a ser o “todosJuntosnfe.keystore”?[/quote]
Vc deve colocar todos os .cer dentro deste keystore.
Na internet você acha documentos explicando como criar um keystore e adicionar os .cer dentro dele. Apanhei bastante desse cara no começo. Fiz um tutorial, posso estar postanto ele mais a noite.
Alguém ja montou a NFe do destinátario??
eu montei a nfe do destinatário , mas quando valido da um erro loco…
org.xml.sax.SAXParseException: Identity Constraint error: identity constraint "KeyRef@1d15445" has a keyref which refers to a key or unique that is out of scope.
se alguém tiver alguma dica…
alguem sabe de algum validador para o layout 2?
cara…consegui arrumar… na verdade eu estava usando o pacote de schema PL_006preC ai baixei o PL_006e e ai foi na boa…
pq no 6e não tem essa chave de referencia que tem no 6c…
acho que os caras tinham meio q se perdido com o schema e o layout…
valeo ai Mackrophus … ta manjando de NFe heim… haha