Problema com namespaces xml

2 respostas
jeancz

Alguém sabe como fazer o JaxB não gerar os prefixos dos namespaces?

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:nfeCabecMsg xmlns:ns2="http://www.portalfiscal.inf.br/nfe/wsdl/NfeRetRecepcao2" xmlns:ns3="http://www.portalfiscal.inf.br/nfe">
<ns2:cUF>43</ns2:cUF>
<ns2:versaoDados>2.00</ns2:versaoDados></ns2:nfeCabecMsg>



<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:nfeDadosMsg xmlns:ns2="http://www.portalfiscal.inf.br/nfe/wsdl/NfeRetRecepcao2" xmlns:ns3="http://www.portalfiscal.inf.br/nfe">
<ns3:consReciNfe>
<versao>2.00</versao>
<tpAmb>2</tpAmb>
<nRec>431000172708557</nRec>
</ns3:consReciNfe></ns2:nfeDadosMsg>

2 Respostas

wender.jean

Pra ele não gerar eu não sei, mas recentemente precisei trocar os “ns2” por outro padrão e resolvi da seguinte forma:

public class ANSPrefixMapper extends NamespacePrefixMapper {  
  
    public static final String PREFIXO_ANS = "ansTISS";  
    public static final String PREFIXO_XSI = "xsi";  
      
    @Override  
    public String getPreferredPrefix(String arg0, String arg1, boolean arg2) {  
        if("http://www.ans.gov.br/padroes/tiss/schemas".equals(arg0))
        	return PREFIXO_ANS;
        else 
        	return PREFIXO_XSI;
    }  
      
}

E na minha classe de geração setei o seguinte:

marshaller.setProperty("com.sun.xml.bind.namespacePrefixMapper", new ANSPrefixMapper());

Talvez se vc trocar e colocar a constante vazia funcione.

public static final String PREFIXO_ANS = "";
jeancz

Eu preciso gerar as requisições pro site da receita pra emitir Nfe.

A parte mais dificil eu já fiz, agora to me embaçando com essa porcaria do xml.

A espeficação da receita não permite que gere com prefixos, deve ficar algo parecido com isso:

<?xml version="1.0" encoding="UTF-8"?> <enviNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.01"> <idLote>200602220000001</idLote> <NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <infNFe Id="NFe31060243816719000108550000000010001234567890" versao="1.01"> ... <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> ? </NFe> <NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <infNFe Id="NFe31060243816719000108550000000010011234567900" versao="1.01"> ... <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> ? </NFe> <NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <infNFe Id="NFe31060243816719000108550000000010021234567916" versao="1.01"> ... <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> ? </NFe> </enviNFe>

Criado 20 de junho de 2011
Ultima resposta 20 de jun. de 2011
Respostas 2
Participantes 2