Erro projeto NF-e

39 respostas
J

Prezados,

Estou desenvolvendo uma aplicação para emissão de NF-e, porém no momento da comunicação com os servidores da SEFAZ apresenta a seguinte msg de erro, alguém já passou por este problema?

Desde já agradeço a ajuda.

39 Respostas

P

tem caracteres especiais na nota?

como vc esta tentando acessar? axis?

http://www.guj.com.br/java/237281-tutorial-tutorial-consumir-webservice-nfe-20

espero q ajude.

att,

J

Cara,

Estou somente utilizando para verificar o status do webservices…somente para garantir q esta sendo feita a comunicação, porém desde o momento eu que insiro os WSDL no projeto o erro é apresentando…

Estou obtendo os WSDL deste link:
https://www.fazenda.sp.gov.br/nfe/url_webservices/url_webservices.asp

J

Estou verificando aqui que o problema pode ser com as WSDL, pois criei um novo projeto com os WSDL do RS e funcionou corretamente. Porém quando utilizo os WSDL da SEFAZ SP, ocorre o problema.

Alguma sugestão?

Alguem tem os WSDL da SEFAZ SP que já utilizaram em seus projetos para disponibilizar e se possível postar os links para baixar?

P

https://www.fazenda.sp.gov.br/nfe/url_webservices/url_webservices.asp

ajuda?

att,

J

Este é o mesmo local que estou utilizando. O link que postei acima é o mesmo endereço.

Mas obrigado a tentativa…

Mais alguém que possa dar alguma dica?

J

Pessoal,

Consegui resolver o problema…

O que estava sendo causar era a pendência de adição do certificado no kaystore, que por algum motivo esta como se estivesse adicionado, porém a aplicação não encontrava. Esta parte foi resolvida…

Obrigado a todos!!

J

Estou com o seguinte problema:

Cabeçalho do XML para envio:

String nfeCabecMsg =
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\" ?>"
+ "<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>53</cUF>"
+ "<xServ>STATUS</xServ>" + "</consStatServ>";

Resposta do Web Service:

<?xml version="1.0" encoding="utf-8"?>
<retConsStatServ versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe">
	<tpAmb>2</tpAmb>
	<verAplic>SVRS20110111103240</verAplic>
	<cStat>239</cStat>
	<xMotivo>Rejeicao: Cabecalho - Versao do arquivo XML nao suportada</xMotivo>
	<cUF>53</cUF>
	<dhRecbto>2011-06-17T00:11:41</dhRecbto>
	<tMed>1</tMed>
</retConsStatServ>
P

Nfe 2.0 ?

Olha no manual de integraçâo q mudou a versao do xml.

Att,

J

Ainda não consegiu resolver. O problema esta na formatação do XML.

Qual o link para o exemplo que foi postado aqui no forum sobre o consumo do Web Service, para obter o Status?

Abaixo a classe que estou usando:

package Wservice;

import br.inf.portalfiscal.nfe.wsdl.nfestatusservico.NfeStatusServico;
import br.inf.portalfiscal.nfe.wsdl.nfestatusservico.NfeStatusServicoSoap;
import java.security.Security;

public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

String nfeCabecMsg =
		"<?xml version=\"2.0\" encoding=\"UTF-8\" standalone=\"no\" ?>"
		+ "<cabecMsg xmlns=\"http://www.portalfiscal.inf.br/nfe\" "
		+ "versao=\"2.00\">" + "<versaoDados>2.00</versaoDados>"
		+ "</cabecMsg>";

	String nfeDadosMsg =
		"<?xml version=\"2.0\" encoding=\"UTF-8\"?>"
		+ "<consStatServ " + " versao=\"2.00\""
		+ " xmlns=\"http://www.portalfiscal.inf.br/nfe\">"
		+ "<tpAmb>2</tpAmb>" + "<cUF>53</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", "meucertificado.p12");
		System.setProperty("javax.net.ssl.keyStorePassword", "senha");

		System.setProperty("javax.net.ssl.trustStoreType", "JKS");
		System.setProperty("javax.net.ssl.trustStore", "C:\\keystore\\jssecacerts");
		System.setProperty("javax.net.ssl.trustStorePassword", "changeit");

		NfeStatusServico service = new NfeStatusServico();
		try {
			NfeStatusServicoSoap nfeStatus = service.getNfeStatusServicoSoap();
			System.out.println(nfeStatus.nfeStatusServicoNF(nfeCabecMsg,
							nfeDadosMsg));
		} catch (Throwable e1) {
			e1.printStackTrace();
		}
	 }

}
P
<?xml version=\"2.0\"

ao invés de 2.0 aqui é 1.0

<?xml version=\"1.0\"

[url]http://www.guj.com.br/java/237281-tutorial-tutorial-consumir-webservice-nfe-20[/url]

nesse link eu coloquei a maneira como eu consegui emitir nfe2.0 o processo é diferente da nfe1.0

att,

J

Vlw! vou dar uma olhada…

J

pedruhenrik

Neste da versão nfe 2.0:
http://www.4shared.com/document/dX-4E1Up/Tutorial_acessando_WebService_.html

Fiz o projeto passo a passo como no exemplo, porem vc usar no final da classe de teste o seguinte código:

NfeRecepcaoLote2Result result = new NfeRecepcao2Stub(http).nfeRecepcaoLote2(dado, cabE);

Esta classe não é localizada no projeto, esta certo esta utilização para verificar o status do serviço? Faz ideia o pq do problema?

Desde já vlw!

P

vc gerou as classes conforme instrução da página 6 ?

dps disso vc adiciona as classes geradas no projeto.

o exemplo no tutorial trata se para envio da Nfe, a classe gerada para consulta de status tem outro nome e outro metodo tb.

cola ai as classes q foram geradas pelo axis.

att,

J

Segue link para os arquivos, tentei colar aqui no post porém estava apresentando erro…

NfeStatusServico2Stub.java
http://www.4shared.com/file/dfNwa6uw/NfeStatusServico2Stub.html?

NfeStatusServico2CallbackHandler.java
http://www.4shared.com/file/3uUr0RtZ/NfeStatusServico2CallbackHandl.html?

As classes foram inseridas no projeto da forma que esta no tutorial…todos os passos foram seguidos sem erros…

Você roda a aplicação no Tomcat 7 para obter e resposta apresentada?

P
acho q consulta de status é assim.

para cada tipo de serviço muda o metódo.

att,

acho q consulta de status é assim.

para cada tipo de serviço muda o metódo.

att,

J

Sobre meu post anterior você identificou algum problema nas classes geradas?

Tem alguma observação a fazer pq a o método acima citado não esta sendo reconhecido pela aplicação?

P

aparentemente esta normal. Mas para cada servico vc deve gerar as classes auxiliares para comunicacao, assim cada servico tera seu metodo de consumo.

Funcionou seu projeto ???

Att,

J

Estou tendo problema agora com o Tomcat 7 + Eclipse Helios.

Erro 404…

Estou instalando as versões mais atualizadas aqui para fazer novos testes…

P

o q exatamente vc esta tentando fazer?

a consumação dos webservices deu certo?

att,

J

Estou com o seguinte erro neste momento:

com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
	at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:121)
	at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:142)
	at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:83)
	at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:105)
	at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:587)
	at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:546)
	at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:531)
	at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:428)
	at com.sun.xml.internal.ws.client.Stub.process(Stub.java:211)
	at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:124)
	at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:98)
	at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
	at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
	at $Proxy28.nfeStatusServicoNF(Unknown Source)
	at webservicers.Main.main(Main.java:51)
Caused by: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
	at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1649)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1612)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1595)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1172)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1149)
	at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:434)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166)
	at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1014)
	at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnectionOldImpl.getOutputStream(HttpsURLConnectionOldImpl.java:200)
	at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:109)
	... 14 more
Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
	at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:57)
	at sun.security.validator.Validator.getInstance(Validator.java:161)
	at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:108)
	at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:204)
	at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:249)
	at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1185)
	at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:136)
	at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593)
	at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:893)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1138)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1165)
	... 20 more
Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
	at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:183)
	at java.security.cert.PKIXParameters.<init>(PKIXParameters.java:103)
	at java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:87)
	at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:55)
	... 31 more
J

Alguma informação sobre este erro?

J

pedruhenrik,

Vc tem alguma sugestão para este erro?

Já refiz tudo…o projeto…a instalação do ambiente e nada resolveu…

OBS: Inicialmente eu estava com o projeto apresentando erro apenas do formatação do XML. Porém após a atualização do Java que começou apresentar este problema…
Falo apos a atualização devido ter sido a mudança que ocorreu no computador. Porém eu utilizei a restauração do Windows para reverter as mudanças, porém não voltar ao que estava o projeto.

Estava com o Java 6 Update 24. foi atualizado para o Java 6 Update 26.

J

Consegui resolver o problema…

Por algum motivo apesar de não apresentar erro na adição do certificado, creio que o mesmo não estava sendo localizado. Refiz todo o processo de instalação e exportação do certificado até a inclusão…Após todo o processo refeito funcionou…

Agora estou com problema de formatação de XML, porém creio que seja porque estava usando a versão 1.10, vou fazer as mudanças para a versão 2.00 e posto o resultado.

J

pedruhenrik,

O tutorial que você enviou os links o da versão nfe 2 esta apresentando a seguinte msg:

<retEnviNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00"><tpAmb>2</tpAmb><verAplic>SVRS20100210155347</verAplic><cStat>409</cStat><xMotivo>Rejeicao: Campo cUF inexistente no elemento nfeCabecMsg do SOAP Header</xMotivo><cUF>0</cUF><dhRecbto>0100-01-02T00:00:00</dhRecbto></retEnviNFe>

Faz ideia de onde é preciso fazer a correção?

P

ta faltando o código UF no cabeçalho, posta essa sua classe que faz o envio para a sefaz.

att,

J

Segue código.

package padrao;

import java.io.ByteArrayInputStream;
import java.security.Security;

import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamReader;
import br.inf.portalfiscal.www.nfe.wsdl.nferecepcao2.NfeRecepcao2Stub;
import br.inf.portalfiscal.www.nfe.wsdl.nferecepcao2.NfeRecepcao2Stub.*;

public class Teste {
	public static void main(String[] args) {

		String nfeDadosMsg = "<nfeDadosMsg><consReciNFe xmlns=\"http://www.portalfiscal.inf.br/nfe\" versao=\"2.00\"><tpAmb>2</tpAmb><nRec>351000028049178</nRec></consReciNFe></nfeDadosMsg>";
		String http = "https://homologacao.nfe.sefazvirtual.rs.gov.br/ws/Nferecepcao/NFeRecepcao2.asmx";
		
		System.setProperty("sun.security.ssl.allowUnsafeRenegotiation", "true");
		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:\\notaFiscalEletronica\\meucertificado.p12");
		System.setProperty("javax.net.ssl.keyStorePassword", "123456");

		System.setProperty("javax.net.ssl.trustStoreType", "JKS");
		System.setProperty("javax.net.ssl.trustStore", "C:\\notaFiscalEletronica\\InstallCert\\jssecacerts");
		System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
		
		try {
			NfeRecepcao2Stub.NfeCabecMsg nfecabec = new NfeRecepcao2Stub.NfeCabecMsg();
			nfecabec.setCUF("35");
			nfecabec.setVersaoDados("2.00");
			NfeRecepcao2Stub.NfeCabecMsgE cabE = new NfeCabecMsgE();
			cabE.setNfeCabecMsg(nfecabec);
			ByteArrayInputStream baisDados = new ByteArrayInputStream(nfeDadosMsg.getBytes());
			XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance();
			xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, Boolean.FALSE);
			XMLStreamReader xmlReader = xmlInputFactory.createXMLStreamReader(baisDados);
			NfeRecepcao2Stub.NfeDadosMsg dado = NfeRecepcao2Stub.NfeDadosMsg.Factory.parse(xmlReader);
			NfeRecepcaoLote2Result result = new NfeRecepcao2Stub(http).nfeRecepcaoLote2(dado, cabE);
			System.out.println(result.getExtraElement());
		} catch (Exception e) {
			throw new RuntimeException("Message:" + e.getMessage() + " Cause: " + e.getCause());
		}
	}
}
P

apenas copiei e colei sua classe, e substitui pelo meu certificado e keystore e olha o retorno:

<retEnviNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00"><tpAmb>2</tpAmb><verAplic>SVRS20100210155347</verAplic><cStat>226</cStat><xMotivo>Rejeicao: Codigo da UF do Emitente diverge da UF autorizadora</xMotivo><cUF>35</cUF><dhRecbto>0100-01-02T00:00:00</dhRecbto></retEnviNFe>

tive esse retorno pq passe o código UF de SP (35).

quando envio ao webservice de SP:

<retEnviNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00"><tpAmb>1</tpAmb><verAplic>SP_NFE_PL_006e</verAplic><cStat>103</cStat><xMotivo>Lote recebido com sucesso</xMotivo><cUF>35</cUF><dhRecbto>2011-06-24T11:00:18</dhRecbto><infRec><nRec>351000652876635</nRec><tMed>1</tMed></infRec></retEnviNFe>

já procurou no manual de integração o q pode ser este erro?

att,


J

Fiz o mesmo teste e também obtive a mesma resposta.

Obrigado a ajuda.

J

Estava fazendo os passos para emissão da NF-e separados, porém fiquei com algumas dúvidas sobre o processo de emissão…

Quais os passos a serem seguidos para a emissão, após a criação do XML?

Onde posso encontrar esta informações?

J

Estava fazendo os passos para emissão da NF-e separados, porém fiquei com algumas dúvidas sobre o processo de emissão…

Quais os passos a serem seguidos para a emissão, após a criação do XML?

Onde posso encontrar esta informações?

P

como assim? não entendi.

depois de criar o xml, vc assina ele com certificado digital tipo a1 ou a3, envia a sefaz, recebe o protocolo sobre a emissão, depois consulta o status da nota emitida.

o manual de integração é uma biblia quanto a nfe, rs.

att,

J

vlw!

Era justamente estes passos que você citou que estava em dúvida…

também estou lendo o manual da nfe agora…hehe!!

Na verdade eu estava com dúvida sobre a assinatura do XML…mas agora entendi q ele é assinado pelo cerificado…

L

Cara, faz o seguinte, entra neste forum aqui, la eu consegui terminar meu projeto de NFE em 3 dias, muito bom, recomendo.
http://www.javac.com.br/jc/forums/show/11.page

J

VLW! Conheci a poucos dias…Obrigado!

Vc já chegou a fazer este projeto?

L

Ainda não terminei, tive que dar uma alterada no foco do meu projeto e dei uma parada, mas consegui criar a nota, assinar, validar, enviar e receber o retorno, tudo em linux, trabalho com ubuntu, e certificado A3

J

lucianotome,

Você esta usando Java? Ide Eclipse?

J

Enviei uma msg privada qdo puder por favor verifique.

J

Prezados,

Após rodar a aplicação local comecei a fazer as migrações para o projeto que de fato irei usar, porém começou com alguns problemas e no momento estou com o seguinte erro:

Linha do código onde o erro esta sendo apresentado.

Erro apresentado no console.

3 ["http-bio-8080"-exec-3] INFO http.HTTPSender  - Unable to sendViaPost to url[https://hnfe.sefaz.ba.gov.br/webservices/nfenw/NfeRecepcao2.asmx]
javax.net.ssl.SSLHandshakeException: Error signing certificate verify
	at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(Unknown Source)
	at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Unknown Source)
	at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
	at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown Source)
	at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source)
	at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown Source)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(Unknown Source)
	at com.sun.net.ssl.internal.ssl.AppInputStream.read(Unknown Source)
	at java.io.BufferedInputStream.fill(Unknown Source)
	at java.io.BufferedInputStream.read(Unknown Source)
	at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
	at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
	at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116)
	at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1413)
	at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973)
	at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735)
	at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098)
	at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
	at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
	at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
	at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
	at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:560)
	at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:199)
	at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:76)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:400)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:225)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:438)
	at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402)
	at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
	at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
	at br.inf.portalfiscal.www.nfe.wsdl.nferecepcao2.NfeRecepcao2Stub.nfeRecepcaoLote2(NfeRecepcao2Stub.java:196)
	at br.gov.fazenda.nfe.www.envio.NFeRecepcaoCerA3.NfeRecepcaoLoteA3(NFeRecepcaoCerA3.java:98)
	at br.gov.fazenda.nfe.www.inicial.EmissaoPadraoNfe.emiteNotaFiscal(EmissaoPadraoNfe.java:28)
	at br.gov.fazenda.nfe.www.inicial.NfeEnvio.doGet(NfeEnvio.java:34)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:140)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.security.InvalidKeyException: Unsupported key type: SunPKCS11-SmartCard RSA private key, 1024 bits (id 1, token object, sensitive, unextractable)
	at sun.security.mscapi.RSACipher.engineGetKeySize(RSACipher.java:345)
	at javax.crypto.Cipher.b(DashoA13*..)
	at javax.crypto.Cipher.a(DashoA13*..)
	at javax.crypto.Cipher.init(DashoA13*..)
	at java.security.Signature$CipherAdapter.engineInitSign(Unknown Source)
	at java.security.Signature$Delegate.init(Unknown Source)
	at java.security.Signature$Delegate.chooseProvider(Unknown Source)
	at java.security.Signature$Delegate.engineInitSign(Unknown Source)
	at java.security.Signature.initSign(Unknown Source)
	at com.sun.net.ssl.internal.ssl.RSASignature.engineInitSign(Unknown Source)
	at java.security.Signature$Delegate.engineInitSign(Unknown Source)
	at java.security.Signature.initSign(Unknown Source)
	at com.sun.net.ssl.internal.ssl.HandshakeMessage$CertificateVerify.<init>(Unknown Source)

Caso alguem puder ajudar ficarei muito grato, pois no momento não sei o que fazer. Vou tentar mudar o ambiente para verificar.

Desde já agradeço a atenção.

J

Alguma resposta?

Necessito fazer alguma inserção de certificado no tomcat?

Criado 16 de junho de 2011
Ultima resposta 25 de jul. de 2011
Respostas 39
Participantes 3