Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao carregar XML assinado no Xharbour.


Ver Solução Respondido por Luiz Alberto da Silva Lope,

Recommended Posts

  • Solution
Postado

Olá pessoal.

Tenho uma rotina escrita em xHarbour que precisa carregar XML's de NFC-e. Essa rotina utiliza a classe TXmlDocumento (txml.prg) e, ao carregar o XML já assinado, apresenta erro no trecho abaixo:

<Transforms>
  <Transform  Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"></Transform >
  <Transform  Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"></Transform >
</Transforms>

Durante os testes identificamnos que o erro ocorre devido ao espaço ao fechar a tag "</Transform' '>".

Tenho outras rotinas escritas em Delphi que conseguem carregar o XML sem erros.

Então alterei a Unit, testei e o erro não ocorreu novamente.

ACBrXmlWriter.pas

  • 1 mês depois ...
Postado

Bom dia.

Acredito que meu texto não esclareceu o problema. Vou tentar explicar melhor:

A correção que eu sugeri é pra remover os espaços em branco no nome da tag TRANSFORM.

image.png.e0e1f2e23f56301406b4b4ef408ca8b0.png

Ao fazer a assinatura do XML está gerando estes espaços branco, conforme a imagem acima.

Esses espaços são desnecessários. Na maioria das vezes não causa problema algum, mas no caso do XHARBOUR, o parser de XML acusa erro na leitura desta tag.

  • Consultores
Postado

Boa tarde,

Criada a TK-7223 para avaliação.

Obrigado pela contribuição.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.