Transport error: 403 Error: Forbidden na NFe

15 respostas
J

Por que será que quando tento acessar o serviço de consulta de status está me dando essa Exception no Axis2?

Preciso fazer esse acesso e tenho 2 tokens iguais (apenas para empresas diferentes), um deles faz o acesso normal e o outro dá esse erro.

Tou ficando maluco com esse troço.

org.apache.axis2.AxisFault: Transport error: 403 Error: Forbidden at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:310) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:200) 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:435) 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 emissor.ws.h.status.NfeStatusServico2Stub.nfeStatusServicoNF2(NfeStatusServico2Stub.java:173) at emissor.lib.NFe.getStatusServico(NFe.java:457) at emissor.ui.NotasFiscaisUI$1.run(NotasFiscaisUI.java:154)

Quando eu acesso pela URL não dá problema e mostra a página do SEFAZ, é algo no meu sistema, o que pode ser?

15 Respostas

J

javer:
Por que será que quando tento acessar o serviço de consulta de status está me dando essa Exception no Axis2?

Preciso fazer esse acesso e tenho 2 tokens iguais (apenas para empresas diferentes), um deles faz o acesso normal e o outro dá esse erro.

Tou ficando maluco com esse troço.

org.apache.axis2.AxisFault: Transport error: 403 Error: Forbidden at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:310) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:200) 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:435) 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 emissor.ws.h.status.NfeStatusServico2Stub.nfeStatusServicoNF2(NfeStatusServico2Stub.java:173) at emissor.lib.NFe.getStatusServico(NFe.java:457) at emissor.ui.NotasFiscaisUI$1.run(NotasFiscaisUI.java:154)

Quando eu acesso pela URL não dá problema e mostra a página do SEFAZ, é algo no meu sistema, o que pode ser?

[color=red]Puxa!!! [/color]
[color=darkblue]Ninguém dos “bambambans” tem uma dica para me ajudar?[/color]

J

Javer, conseguiu resolver o problema do Forbidden?

Estou com situação semelhante, tinha tudo funcionando com um certificado A1. Na troca para A3, erro 403.

Já refiz o trustStore, já coloquei toda a cadeia de certificados do servidor dentro do token,e nada…

J

Sim, era uma coisa bem estúpida, no cadastro da empresa (ou seja, no XML) estava com um CNPJ e no certificado estava com outro (no certificado estava correto), então ele retornava esse Forbiden.

J

Estranho. Esse tipo de erro prá mim aparece como uma mensagem bem clara sobre o CNPJ inválido.

No meu caso (já coloquei em outro tópico), precisei remover toda a cadeia de certificados das CAs do token, mantendo somente o do cliente, e importá-los novamente.

Bom, pelo menos agora está tudo ok.

Abraço

O

Bom dia pessoal,

jhansen estou com o mesmo problema de vocês… qual é o processo para realizar isto que fez?

C

A quem interessar, consegui resolver o problema e postei na thread:

http://www.guj.com.br/java/238251

Também pode ser visto em:
http://a4t.in/xwiki/bin/view/Blog/ForbiddenNFe

Espero ter ajudado

G

Desculpem estar upando este tópico, mas é que estou tendo esse mesmo problema, mas só com o serviço NfeConsultaCadastro (os outros de NFe funcionam) e para a UF do RS, e só com A3.

Código da função que efetua a consulta de cadastro:

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.MalformedURLException;
import java.net.URL;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;
import java.security.Provider;
import java.security.Security;
import java.security.UnrecoverableKeyException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.util.Enumeration;

import javax.xml.stream.XMLStreamException;
//import java.io.BufferedReader;  
//import java.io.FileInputStream;  
//import java.io.InputStreamReader; 
//import java.util.Iterator;  
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.util.AXIOMUtil;
import org.apache.commons.httpclient.protocol.Protocol;

import br.inf.portalfiscal.www.nfe.wsdl.cadconsultacadastro2.*;

public class SendXmlConsultaCadastro {
	private static final int SSL_PORT = 443;

	public static String SendXmlConsCad(String strXml, int tipoCert,
			String senhaDoCertificado, String urlRec, String cdUF)
			throws KeyStoreException, NoSuchAlgorithmException,
			CertificateException, IOException, UnrecoverableKeyException,
			XMLStreamException {

		String codigoDoEstado = cdUF;
		URL url = new URL(urlRec);// NfeRecepcao

		// String configName = "SmartCard.cfg";
		String configName = "";
		if (tipoCert == 1)
			configName = "SmartCardSafeSign.cfg";
		else if (tipoCert == 2)
			configName = "SmartCardSSI.cfg";
		else if (tipoCert == 3)
			configName = "Token.cfg";
		else
			configName = "SmartCardSSISafeWeb.cfg";

		// String senhaDoCertificado = "1234";
		String arquivoCacertsGeradoTodosOsEstados = "NFeCacerts";

		char SEP = File.separatorChar;
		Provider p = new sun.security.pkcs11.SunPKCS11(System.getenv("APPDATA")
				+ SEP + "JavaTotalNFe" + SEP + configName);
		Security.addProvider(p);
		char[] pin = senhaDoCertificado.toCharArray();
		KeyStore ks = KeyStore.getInstance("pkcs11");
		ks.load(null, pin);

		String alias = "";
		Enumeration<String> aliasesEnum = ks.aliases();
		while (aliasesEnum.hasMoreElements()) {
			alias = (String) aliasesEnum.nextElement();
			if (ks.isKeyEntry(alias))
				break;
		}
		X509Certificate certificate = (X509Certificate) ks
				.getCertificate(alias);
		PrivateKey privateKey = (PrivateKey) ks.getKey(alias,
				senhaDoCertificado.toCharArray());
		SocketFactoryDinamico socketFactoryDinamico = new SocketFactoryDinamico(
				certificate, privateKey);
		socketFactoryDinamico
				.setFileCacerts(arquivoCacertsGeradoTodosOsEstados);

		Protocol protocol = new Protocol("https", socketFactoryDinamico,
				SSL_PORT);
		Protocol.registerProtocol("https", protocol);

		OMElement ome = AXIOMUtil.stringToOM(strXml);

		NfeDadosMsg dadosMsg = new NfeDadosMsg();
		dadosMsg.setExtraElement(ome);
		NfeCabecMsg nfeCabecMsg = new NfeCabecMsg();

		/**
		 * Código do Estado.
		 */
		nfeCabecMsg.setCUF(codigoDoEstado);

		/**
		 * Versao do XML
		 */
		nfeCabecMsg.setVersaoDados("2.00");

		NfeCabecMsgE nfeCabecMsgE = new NfeCabecMsgE();
		nfeCabecMsgE.setNfeCabecMsg(nfeCabecMsg);

		CadConsultaCadastro2Stub stub = new CadConsultaCadastro2Stub(
				url.toString());
		ConsultaCadastro2Result result = stub.consultaCadastro2(dadosMsg,
				nfeCabecMsgE);
		return result.getExtraElement().toString();
	}
}

Código da classe SocketFactoryDinamico (é basicamente igual ao que foi postado anteriormente aqui):

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.SocketAddress;
import java.net.UnknownHostException;
import java.security.KeyManagementException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.Principal;
import java.security.PrivateKey;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;

import javax.net.SocketFactory;
import javax.net.ssl.KeyManager;
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
import javax.net.ssl.X509KeyManager;

import org.apache.commons.httpclient.ConnectTimeoutException;
import org.apache.commons.httpclient.params.HttpConnectionParams;
import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;

public class SocketFactoryDinamico implements ProtocolSocketFactory {
	private SSLContext ssl = null;
	private X509Certificate certificate;
	private PrivateKey privateKey;
	private String fileCacerts;

	public SocketFactoryDinamico(X509Certificate certificate,
			PrivateKey privateKey) {
		this.certificate = certificate;
		this.privateKey = privateKey;
	}

	private SSLContext createSSLContext() {
		try {
			KeyManager[] keyManagers = createKeyManagers();
			TrustManager[] trustManagers = createTrustManagers();
			SSLContext sslContext = SSLContext.getInstance("TLS");
			sslContext.init(keyManagers, trustManagers, null);

			return sslContext;
		} catch (KeyManagementException e) {
		} catch (KeyStoreException e) {
		} catch (NoSuchAlgorithmException e) {
		} catch (CertificateException e) {
		} catch (IOException e) {
		}
		return null;
	}

	private SSLContext getSSLContext() {
		if (ssl == null) {
			ssl = createSSLContext();
		}
		return ssl;
	}

	public Socket createSocket(String host, int port, InetAddress localAddress,
			int localPort, HttpConnectionParams params) throws IOException,
			UnknownHostException, ConnectTimeoutException {
		if (params == null) {
			throw new IllegalArgumentException("Parameters may not be null");
		}
		int timeout = params.getConnectionTimeout();
		SocketFactory socketfactory = getSSLContext().getSocketFactory();
		if (timeout == 0) {
			return socketfactory.createSocket(host, port, localAddress,
					localPort);
		}

		Socket socket = socketfactory.createSocket();
		SocketAddress localaddr = new InetSocketAddress(localAddress, localPort);
		SocketAddress remoteaddr = new InetSocketAddress(host, port);
		socket.bind(localaddr);
		try {
			socket.connect(remoteaddr, timeout);
		} catch (Exception e) {
			throw new ConnectTimeoutException("Possível timeout de conexão", e);
		}

		return socket;
	}

	public Socket createSocket(String host, int port, InetAddress clientHost,
			int clientPort) throws IOException, UnknownHostException {
		return getSSLContext().getSocketFactory().createSocket(host, port,
				clientHost, clientPort);
	}

	public Socket createSocket(String host, int port) throws IOException,
			UnknownHostException {
		return getSSLContext().getSocketFactory().createSocket(host, port);
	}

	public Socket createSocket(Socket socket, String host, int port,
			boolean autoClose) throws IOException, UnknownHostException {
		return getSSLContext().getSocketFactory().createSocket(socket, host,
				port, autoClose);
	}

	public KeyManager[] createKeyManagers() {
		HSKeyManager keyManager = new HSKeyManager(certificate, privateKey);

		return new KeyManager[] { keyManager };
	}

	public TrustManager[] createTrustManagers() throws KeyStoreException,
			NoSuchAlgorithmException, CertificateException, IOException {
		KeyStore trustStore = KeyStore.getInstance("JKS");

		char SEP = File.separatorChar;
		trustStore
				.load(new FileInputStream(System.getenv("APPDATA") + SEP
						+ "JavaTotalNFe" + SEP + fileCacerts),
						"changeit".toCharArray());
		TrustManagerFactory trustManagerFactory = TrustManagerFactory
				.getInstance(TrustManagerFactory.getDefaultAlgorithm());
		trustManagerFactory.init(trustStore);
		return trustManagerFactory.getTrustManagers();
	}

	class HSKeyManager implements X509KeyManager {

		private X509Certificate certificate;
		private PrivateKey privateKey;

		public HSKeyManager(X509Certificate certificate, PrivateKey privateKey) {
			this.certificate = certificate;
			this.privateKey = privateKey;
		}

		public String chooseClientAlias(String[] arg0, Principal[] arg1,
				Socket arg2) {
			return certificate.getIssuerDN().getName();
		}

		public String chooseServerAlias(String arg0, Principal[] arg1,
				Socket arg2) {
			return null;
		}

		public X509Certificate[] getCertificateChain(String arg0) {
			return new X509Certificate[] { certificate };
		}

		public String[] getClientAliases(String arg0, Principal[] arg1) {
			return new String[] { certificate.getIssuerDN().getName() };
		}

		public PrivateKey getPrivateKey(String arg0) {
			return privateKey;
		}

		public String[] getServerAliases(String arg0, Principal[] arg1) {
			return null;
		}
	}

	public void setFileCacerts(String fileCacerts) {
		this.fileCacerts = fileCacerts;
	}
}
C

GSPohlmann, qual método de createSocket() você está utilizando? Estou com problemas de 403 Forbidden para envio de NFSe para Salvador, utilizando essa mesma classe.

G

O método de createSocket() que é chamado na função acima é o javax.net.SocketFactory.createSocket()

C
Certo, mas qual dos métodos públicos de
SocketFactoryDinamico
você chama para a criação da conexão?
public Socket createSocket(String host, int port, InetAddress localAddress,  
            int localPort, HttpConnectionParams params) throws IOException,  
            UnknownHostException, ConnectTimeoutException 
  
    public Socket createSocket(String host, int port, InetAddress clientHost,  
            int clientPort) throws IOException, UnknownHostException 
    }  
  
    public Socket createSocket(String host, int port) throws IOException,  
            UnknownHostException 
    }  
  
    public Socket createSocket(Socket socket, String host, int port,  
            boolean autoClose) throws IOException, UnknownHostException
G

Explicitamente não está sendo chamado nenhum deles :stuck_out_tongue:

C

Pois é, eu notei isso nos códigos que o pessoal postou e notei que o objeto ssl tá sempre null, aí imaginei se esse não é o motivo do 403. Ainda não consegui que minha usuária faça o teste.

M

Estou com o mesmo problema aqui.

Consulta Cadastro com Certificado A3.

Já refizemos o keystore.

Me parece que algo na cadeia de certificado do servidor, a consulta de cadastro do RS, é o único webservice naquele servidor.

Não creio que seja alguma coisa no código, pois em outros estados funciona

G
Ah, fui testar usando o emissor gratuito de NF-e, e lá também deu problema. O erro que deu lá foi:
; nested exception is: 
org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages 
AxisFault 
faultCode: {http://www.w3.org/2003/05/soap-envelope}Server.userException 
faultSubcode: 
faultString: org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages 
faultActor: 
faultNode: 
faultDetail: 
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages 
at org.apache.axis.encoding.DeserializationContext.startDTD(DeserializationContext.java:1161) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.doctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.doctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.scanDoctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source) 
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) 
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) 
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) 
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) 
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) 
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.gov.sp.fazenda.dsen.ws.cadastro.CadConsultaCadastro2Soap12Stub.consultaCadastro2(CadConsultaCadastro2Soap12Stub.java:171) 
at br.gov.sp.fazenda.dsen.model.business.WSBusiness.h(WSBusiness.java:531) 
at br.gov.sp.fazenda.dsen.model.business.WSBusiness.servico(WSBusiness.java:125) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness.a(ClienteBusiness.java:590) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness.consultarCadastro(ClienteBusiness.java:547) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0.CGLIB$consultarCadastro$8(<generated>) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0$$FastClassByCGLIB$$6e8eef66.invoke(<generated>) 
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:167) 
at br.gov.sp.fazenda.dsge.model.dao.util.DSGEDAOInterceptorHelper.intercept(DSGEDAOInterceptorHelper.java:66) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0.consultarCadastro(<generated>) 
at br.gov.sp.fazenda.dsen.model.facade.ClienteFacade.consultarCadastro(ClienteFacade.java:150) 
at br.gov.sp.fazenda.dsen.controller.InformacaoConsultaCadastroController$1.a(InformacaoConsultaCadastroController.java:68) 
at br.gov.sp.fazenda.dsen.controller.InformacaoConsultaCadastroController$1.doInBackground(InformacaoConsultaCadastroController.java:63) 
at javax.swing.SwingWorker$1.call(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at javax.swing.SwingWorker.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 

{http://xml.apache.org/axis/}hostname:MP42 

org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages 
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101) 
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:701) 
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) 
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) 
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) 
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.gov.sp.fazenda.dsen.ws.cadastro.CadConsultaCadastro2Soap12Stub.consultaCadastro2(CadConsultaCadastro2Soap12Stub.java:171) 
at br.gov.sp.fazenda.dsen.model.business.WSBusiness.h(WSBusiness.java:531) 
at br.gov.sp.fazenda.dsen.model.business.WSBusiness.servico(WSBusiness.java:125) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness.a(ClienteBusiness.java:590) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness.consultarCadastro(ClienteBusiness.java:547) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0.CGLIB$consultarCadastro$8(<generated>) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0$$FastClassByCGLIB$$6e8eef66.invoke(<generated>) 
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:167) 
at br.gov.sp.fazenda.dsge.model.dao.util.DSGEDAOInterceptorHelper.intercept(DSGEDAOInterceptorHelper.java:66) 
at br.gov.sp.fazenda.dsen.model.business.ClienteBusiness$$EnhancerByCGLIB$$aafabdb0.consultarCadastro(<generated>) 
at br.gov.sp.fazenda.dsen.model.facade.ClienteFacade.consultarCadastro(ClienteFacade.java:150) 
at br.gov.sp.fazenda.dsen.controller.InformacaoConsultaCadastroController$1.a(InformacaoConsultaCadastroController.java:68) 
at br.gov.sp.fazenda.dsen.controller.InformacaoConsultaCadastroController$1.doInBackground(InformacaoConsultaCadastroController.java:63) 
at javax.swing.SwingWorker$1.call(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at javax.swing.SwingWorker.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Caused by: org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages 
at org.apache.axis.encoding.DeserializationContext.startDTD(DeserializationContext.java:1161) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.doctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.doctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.scanDoctypeDecl(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source) 
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) 
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) 
... 27 more

Já quando envio a consulta de cadastro para SP, o erro não ocorre.

Ao que parece, o problema é no servidor da SEFAZ-RS mesmo.

M

Resposta do Sefaz RS

"A AC Certsign RFB G,4 que emitiu o certificado, não estava cadastrada nos servidores da SEFAZ RS que atende ao Web Service CadConsultaCadastro. Foi feita a solicitação de inclusão deste certificado, e essa solicitação foi atendida na manhã de hoje.

Peço que tentem realizar a operação novamente agora."

Certificado Certsign Funcionando, porem o Cliente tem Certificado CAIXA, ainda não funciona

Criado 1 de outubro de 2010
Ultima resposta 3 de out. de 2014
Respostas 15
Participantes 7