cara entra no endereço do ws e salva os wsdl… e a paritr desses vc cria os web services…
Se eu preencho o campo Service Definition com a url do web service da que eu quero, por exemplo https://nfe.fazenda.sp.gov.br/nfeweb/services/nfestatusservico.asmx?wsdl, ele me mostra um erro " The service definition selected is invalid."
Testei com um outro wsdl de um site qualquer e funcionou, criou as classes java normalmente, ou seja, não deve ser problema do eclipse.
Tenho os wsdl que peguei no site aqui. Como eu faço essa conversão a partir deles? É só preencher o campo “Service Definition” com o caminho dele (por exemplo, c:\teste.wsdl) ou o procedimento é outro?
Consegui resolver.
Coloquei os wsdl num servidor Apache Axis e assim consegui gerar as classes java.
a classe NfeStatusServicoLocator não é gerada automaticamente, o que exatamente ela faz ?
abraço !
[size=14]Olá pessoal,
Apenas startei meu projeto NFe, bem atrasado e correndo atrás do prejuízo, vi neste tópico algumas dicas, mas
antes de entrar em alguns detalhes, gostaria de saber se alguém conseguiu baixar os arquivos WSDL do SEFAZ-BA
e se alguém tem desenvolvido em Linux, pois eu baixei o arquivo Associacao.pfx pra começar a fazer uns testes,
mas só vjo exemplos para win.
Rafael deu umas dicas q parecem ótimas, mas aqui no Ubuntu me perdi um pouco em como gerar, por exemplo, o
nfe.keystore.
Tenho muito a fazer ainda, mas gostaria de ter essas dicas, alguém?
[/size]
[quote=UpTheIrons][size=14]Olá pessoal,
Apenas startei meu projeto NFe, bem atrasado e correndo atrás do prejuízo, vi neste tópico algumas dicas, mas
antes de entrar em alguns detalhes, gostaria de saber se alguém conseguiu baixar os arquivos WSDL do SEFAZ-BA
e se alguém tem desenvolvido em Linux, pois eu baixei o arquivo Associacao.pfx pra começar a fazer uns testes,
mas só vjo exemplos para win.
Rafael deu umas dicas q parecem ótimas, mas aqui no Ubuntu me perdi um pouco em como gerar, por exemplo, o
nfe.keystore.
Tenho muito a fazer ainda, mas gostaria de ter essas dicas, alguém?
[/size]
[/quote]
Apesar de usarmos Windows aqui, o keystore eu gerei no Ubuntu porque foi mais simples. Basta ter o Java instalado, abrir um terminal e digitar o comando que o Rafael Passou, mas precedido do comando sudo:
sudo keytool -import -alias nfe -keystore <caminho_para_um_keystore Ex: /home/pasta_do_usuario/nfe.keystore> -file <caminho_completo_para_o_cert_exportado_do_IE ( arquivo .cer)>
Might Angel,
Então, essa parte eu consegui fazer diferente, achei aqui mesmo no forum, n me lembro quem deu a solução,
mas no caso, usa o arquivo PFX de forma direta, sem precisar usar Keytool.
[code]
KeyStore ks = KeyStore.getInstance("PKCS12");
ks.load(new FileInputStream(caminhoCertificado), senha.toCharArray());
Enumeration aliasesEnum = ks.aliases();
String alias = "";
while (aliasesEnum.hasMoreElements()) {
alias = (String) aliasesEnum.nextElement();
if (ks.isKeyEntry(alias)) {
System.out.println(alias);
break;
}
}
KeyStore.PrivateKeyEntry keyEntry = (KeyStore.PrivateKeyEntry) ks.getEntry(alias, new KeyStore.PasswordProtection(senha.toCharArray()));
X509Certificate cert = (X509Certificate) keyEntry.getCertificate();
// Create the KeyInfo containing the X509Data.
KeyInfoFactory kif = fac.getKeyInfoFactory();
List x509Content = new ArrayList();[/code]
Este é um trecho do código.
Falew.
UpTheIrons
mas esse código vai ser vai para a assinatura certo?!?
e os passos usando o keytool é para fazer a comunicação com o ws…
Alves Felipe,
Sim vc está certo.
Na verdade, não cheguei nesta parte ainda (dos WebServices), tô no “início” de tudo,
bem atrasado eu sei, mas tentando
Pessoal,
Segui todos os passos do tópico e consegui rodar a conexão.
Agora estou com outro problema, preciso que uma única execução do programa envie notas para diferentes clientes/empresas.
Há alguma forma de informar os parâmetros “javax.net.ssl.keyStoreType, javax.net.ssl.keyStore e javax.net.ssl.keyStorePassword” por thread???
Estou usando JAX-WS com jboss.
Att,
Fábio Viana
Ola, legal o codigo, parece que esta quase agora.
Seguinte, estava tendo mto problema com o famoso erro 403 mas acho q agora foi, mas apenas para confirmar, qual(is) certificados tenho q deixar no keystore final ?? Eu coloquei o Raiz e o meu exportado.
Agora pra mim nao aparece mais 403, agora so tenho “Caused by: java.net.ConnectException: Connection timed out: connect”.
Alguma ideia ???
Eu verifiquei na classe gerada pelo wsdl SP para verificar o status e o site é “https://homologacao.nfe.fazenda.sp.gov.br/nfeWEB/services/NfeStatusServico.asmx” (acho).
Preciso urgente de uma ajuda gente.
Abracos,
Magno
magno_jr@terra.com.br
Bom dia gente, seguinte, ja tentei de td qto é jeito e agora eu caí no problem em: “HTTP Error 403.7 - Forbidden: SSL client certificate is required”. Alguem poderia me ajudar.
Eu importei no IE os certificados associacao e condominio de testes (ja testei com ambos e nada) e exportei de volta para .cer, entao importei SEFAZSP_homologacao.p7b e exportei a Raiz para .cer (tem q ser algum outro ou mais de um??) e dai adicionei no mesmo keystore o cliente+raiz, mas nada, agora o erro é esse q falei.
Alguma dica ??
Meu codigo:
public static void main(String[] args) {
String nfeCabecMsg = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ "<cabecMsg xmlns=\"http://www.portalfiscal.inf.br/nfe\" "
+ "versao=\"1.02\">" + "<versaoDados>1.07</versaoDados>"
+ "</cabecMsg>";
String nfeDadosMsg = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ "<consStatServ " + " versao=\"1.07\""
+ " xmlns=\"http://www.portalfiscal.inf.br/nfe\">"
+ "<tpAmb>2</tpAmb>" + "<cUF>42</cUF>"
+ "<xServ>STATUS</xServ>" + "</consStatServ>";
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","D:\\Desenvolvimento\\Nota-e\\certificados_nfe\\Certificados\\Condominio.pfx");
System.setProperty("javax.net.ssl.keyStorePassword", "condominio");
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStore", "D:\\Desenvolvimento\\Nota-e\\Certificados_NFe_SefazSP\\v01.jks");
System.setProperty("javax.net.ssl.trustStorePassword", "xxx");
NfeStatusServico service = new NfeStatusServicoLocator();
try {
NfeStatusServicoSoap nfeStatus = service.getNfeStatusServicoSoap();
System.out.println(nfeStatus.nfeStatusServicoNF(nfeCabecMsg, nfeDadosMsg));
} catch (Throwable e1) {
e1.printStackTrace();
}
}
E outra pergunta, meu cliente ja possui um A3, mas o servidor deles nao sera no cliente em si, entao como seria um sistema em java mesmo para acessar o cartao com um leitor? Onde teria q ficar o leitor? Seria bem mais aconselhavel nesse 1o. momento usarmos o A1 q seria o arquivo “simples” mesmo ??
Abracos,
Magno
magno_jr@terra.com.br (email e msn)
Olá pessoal,
Nossa… qntos problemas variados… pena que o meu não é igual =/
Bom… antes…
magno_jr
Acredito que o seu erro é porque a SEFAZ não achou um certificado registrado no servidor deles para, ou seja, a forma como “Condominio” é passado deve ser diferente para que eles achem o certificado do lado deles…
Deve ser isso, porque para usar o serviço é preciso registrar o certificado na SEFAZ, como Condominio e Associacao são certificados de teste que disponibilizam, eles devem estar cadastrados… então, so nos resta a forma de passar essa infomação para o WS…
Espero que ajude…
Aproveitando… ^^
Estou com um problema um pouco antes de você… justamente na montagem dos parâmetros CabecMsg e DadosMsg…
Ao converter os XSD ganhei as classes CabecMsg.java e TConsStatServ.java, que olhando o código delas demonstram terem a finalizadade para montar as msg… mas estou com um erro na hora de fazer o marshall
Para não desviar muito este post, creiei um para o assunto em http://www.guj.com.br/posts/list/134641.java#724376, se alguem puder dar um help, agradeço muito.
Uma dica em relação ao NFe, eu baixei o programa da SEFAZ, o tal “Emissor de Nota Fiscal Eletronica (NF-e)”… no que ele me ajudou ??? Após gerar o XML, Assinar e Validar pelo meu software, importei o XML assinado para ele, onde consigo mais detalhes sobre exceções de preenchimento que posso usar na hora de montar o XML e também, posso usar ele para testar o envio para a SEFAZ… que até o momento estou só recebendo “time out” Ô,o
Fui !
[quote=magno_jr]Bom dia gente, seguinte, ja tentei de td qto é jeito e agora eu caí no problem em: “HTTP Error 403.7 - Forbidden: SSL client certificate is required”. Alguem poderia me ajudar.
Eu importei no IE os certificados associacao e condominio de testes (ja testei com ambos e nada) e exportei de volta para .cer, entao importei SEFAZSP_homologacao.p7b e exportei a Raiz para .cer (tem q ser algum outro ou mais de um??) e dai adicionei no mesmo keystore o cliente+raiz, mas nada, agora o erro é esse q falei.
[/quote]
Agora cheguei neste mesmo problema… segue trechos da minha mensagem de erro…
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)
...
at br.inf.portalfiscal.www.nfe.wsdl.NfeStatusServico.NfeStatusServicoSoapStub.nfeStatusServicoNF(NfeStatusServicoSoapStub.java:110)
...
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:236)
...
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:221)
at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:145)
at sun.security.validator.Validator.validate(Validator.java:203)
at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:172)
at com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(SSLContextImpl.java:320)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:841)
... 25 more
...
Qualquer novidade aviso!
Olá pessoal!
Alguém obteve esse erro e sabe o que pode ser?
com.sun.xml.internal.ws.wsdl.parser.InaccessibleWSDLException: 2 counts of InaccessibleWSDLException.
java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:146)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:122)
at com.sun.xml.internal.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:226)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:189)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:159)
at com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:83)
at javax.xml.ws.Service.<init>(Service.java:56)
at br.inf.portalfiscal.nfe.wsdl.nfestatusservico.NfeStatusServico.<init>(NfeStatusServico.java:46)
at br.orquestra.nfe.ClientConnection.getStatusServico(ClientConnection.java:66)
at br.orquestra.nfe.ClientConnection.main(ClientConnection.java:87)
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at javax.net.ssl.DefaultSSLSocketFactory.throwException(SSLSocketFactory.java:179)
at javax.net.ssl.DefaultSSLSocketFactory.createSocket(SSLSocketFactory.java:199)
at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:178)
at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at br.orquestra.nfe.ClientConnection.main(ClientConnection.java:104)
Caused by: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at java.security.Provider$Service.newInstance(Provider.java:1245)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:220)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:147)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:125)
at javax.net.ssl.SSLContext.getDefault(SSLContext.java:68)
at javax.net.ssl.SSLSocketFactory.getDefault(SSLSocketFactory.java:102)
at org.apache.axis.components.net.JSSESocketFactory.initFactory(JSSESocketFactory.java:61)
at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:79)
... 13 more
Caused by: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.net.ssl.internal.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1277)
at java.security.KeyStore.load(KeyStore.java:1185)
at com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl.getDefaultKeyManager(DefaultSSLContextImpl.java:150)
at com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl.<init>(DefaultSSLContextImpl.java:40)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at java.security.Provider$Service.newInstance(Provider.java:1221)
... 20 more
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.PKCS12PBECipherCore.b(DashoA13*..)
at com.sun.crypto.provider.PKCS12PBECipherCore$PBEWithSHA1AndRC2_40.engineDoFinal(DashoA13*..)
at javax.crypto.Cipher.doFinal(DashoA13*..)
at com.sun.net.ssl.internal.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1274)
... 30 more
{http://xml.apache.org/axis/}hostname:ft-304
java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:154)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at br.orquestra.nfe.ClientConnection.main(ClientConnection.java:104)
Caused by: java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at javax.net.ssl.DefaultSSLSocketFactory.throwException(SSLSocketFactory.java:179)
at javax.net.ssl.DefaultSSLSocketFactory.createSocket(SSLSocketFactory.java:199)
at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:178)
at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
... 10 more
Caused by: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)
at java.security.Provider$Service.newInstance(Provider.java:1245)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:220)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:147)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:125)
at javax.net.ssl.SSLContext.getDefault(SSLContext.java:68)
at javax.net.ssl.SSLSocketFactory.getDefault(SSLSocketFactory.java:102)
at org.apache.axis.components.net.JSSESocketFactory.initFactory(JSSESocketFactory.java:61)
at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:79)
... 13 more
Caused by: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.net.ssl.internal.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1277)
at java.security.KeyStore.load(KeyStore.java:1185)
at com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl.getDefaultKeyManager(DefaultSSLContextImpl.java:150)
at com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl.<init>(DefaultSSLContextImpl.java:40)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at java.security.Provider$Service.newInstance(Provider.java:1221)
... 20 more
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.PKCS12PBECipherCore.b(DashoA13*..)
at com.sun.crypto.provider.PKCS12PBECipherCore$PBEWithSHA1AndRC2_40.engineDoFinal(DashoA13*..)
at javax.crypto.Cipher.doFinal(DashoA13*..)
at com.sun.net.ssl.internal.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1274)
... 30 more
Eu segui o passo-a-passo postado e gerei o seguinte código:
public NfeStatusServicoSoap getStatusServico()
{
try{
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:\\Orquestra\\Certificado\\Associacao.pfx");
System.setProperty("javax.net.ssl.keyStorePassword", "123456");
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStore", "C:\\Orquestra\\Certificado\\exportadonfe.keystore");
Properties props = System.getProperties();
props.put("Dhttp.proxyHost", "ISA");
props.put("Dhttp.proxyPort", "8080");
System.setProperty("http.proxyUser", "usuario");
System.setProperty("http.proxyPassword", "senha");
URL url = new URL(local);
//url.openConnection(new Proxy(type, sa))
QName qname = new QName("NFeStatusServico.asmx");
NfeStatusServico service = new NfeStatusServico(url, qname);
NfeStatusServicoSoap nfeStatus = service.getNfeStatusServicoSoap();
System.out.println(nfeStatus.nfeStatusServicoNF(nfeCabecMsg, nfeDadosMsg));
return nfeStatus;
}
catch(Exception e)
{
e.printStackTrace();
}
return null;
}
O Associacao.pfx eu baixei do site da receita. Exportei o certificado pelo IE e usei o KeyTool.
Obrigado!
Marck
Me aprece ser algo errado no caminho… como “NFeStatusServico.asmx?wsdl”, como vc esta usando ISA ainda… tenta acessar pelo browser e ve se esta tudo certo antes de por no código.
magno_jr
[quote]Ola, legal o codigo, parece que esta quase agora.
Seguinte, estava tendo mto problema com o famoso erro 403 mas acho q agora foi, mas apenas para confirmar, qual(is) certificados tenho q deixar no keystore final ?? Eu coloquei o Raiz e o meu exportado.
Agora pra mim nao aparece mais 403, agora so tenho “Caused by: java.net.ConnectException: Connection timed out: connect”.
Alguma ideia ???[/quote]
Pelo que andei lendo sobre certificados… você precisa deixar no keystore apenas o certificado Publico (.cer) do seu certificado privado…
Por exemplo… se estiver usando o Associacao.pfx, após exportar o .cer dele… importa esse .cer para o seu keystore.
Não sei se isso da certo, porque tb estou com o erro 403 maledito…
HTTP Error 403.7 - Forbidden: SSL client certificate is required.<br>Internet Information Services (IIS)</h2>
Só falta ter que instalar o IIS aki e ter que configurar o certificado nele… já não bastasse o trampo para configurar no JRE…
Acho que estou no caminho errado… porque já esta ficando muito complexo o treco… hehe
Fui !
Entao, ja testei de td qto é jeito e nao vai de jeito nenhum. Quinta feira agora vou conseguir um certificado “certo”, dai vamos ver.
To torcendo pra q funcione com o certificado. Eu vi em algum canto q nao lembro onde q os certificados Associacao e Condominio vc so consegue utilizar caso seja pelo programa deles, e nao pelo webservice. Mas nao a informacao nao era nada oficial.
Se tiver novidade eu te aviso.
E valeu pelas respostas.
Magno
Acabei de publicar uma notícia sobre o Caelum Stella NFe. Estamos procurando contribuidores para ajudar a finalizar o desenvolvimento.
Alguem tem algum simples exemplo de como utilizar o webservice de cadconsultacadastro e/ou NfeRecepcao ??
Eu consegui fazer funcionar o status serviço, mas esses outros 2 nao vai de jeito nenhum.
Obrigado,
Magno
magno_jr@terra.com.br
[quote=magno_jr]Alguem tem algum simples exemplo de como utilizar o webservice de cadconsultacadastro e/ou NfeRecepcao ??
Eu consegui fazer funcionar o status serviço, mas esses outros 2 nao vai de jeito nenhum.
Obrigado,
Magno
magno_jr@terra.com.br[/quote]
Aqui funcionou normal, é só fazer do mesmo jeito que o outro, só que usando as classes para recerpção. Na variavel nfeCabecMsg passe o cabeçalho e na variavel nfeDadosMsg a string XML da nota ja assinada.
Qual o erro que esta dando aí?