ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

400 - Bad Request/Multiple root elements - WebService Nfse

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> NFe
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
rafaero23
Novato
Novato


Registrado: Quinta-Feira, 16 de Junho de 2011
Mensagens: 4

MensagemEnviada: Qui Ago 02, 2012 3:23 pm    Assunto: 400 - Bad Request/Multiple root elements - WebService Nfse Responder com Citação

Olá,
Estou verificando, mais especificadamente com a prefeitura de Blumenau, que, pelo que vi até agora, utiliza as mesmas regras que São Paulo. Utilizo Delphi, importei o wsdl e utilizo o componente RIO.

No evento onBeforeExecute do THTTPRIO, vem MethodName e SOAPRequest. Neste SOAPRequest é onde vejo o que, exatamente, estou enviando para o webservice.

Está acontecendo o seguinte:
No primeiro momento, o SOAPRequest vem com um padrão de empacotamento (SOAP-ENV:Envelope), e o resto do cabeçalho certinho, abrindo "<" e fechando ">" corretamente. Porém, dentro da tag <MensagemXML>, que é onde eu informo previamente na chamada do serviço TesteEnvioLoteRPS do wsdl os dados correspondentes ao RPS, alguns caracters foram substituidos, como, "<" por "&lt;", ">" por "&gt;".
Se deixo desta forma, recebo o erro: "There are multiple root elements. Line 1, position 298", sendo que nesta posição não tem nada errado.

Bom, pra resolver isto, fiz:
Código:
     SOAPRequest:=StringReplace(SOAPRequest,'&gt;','>',[rfReplaceAll]);
     SOAPRequest:=StringReplace(SOAPRequest,'&lt;','<',[rfReplaceAll]);


Como o SOAPRequest vem com um var na frente, acredito que é esta widestring que o HTTPRio vai enviar para o webservice.

Bom, mas mesmo assim, quando faço o código acima, recebo o seguinte erro: "bad request (400) - 'https://nfse.blumenau.sc.gov.br/ws/lotenfe.asmx'".

Já fiz a atualização do wsdl importer do delphi, já tentei em 3 máquinas diferentes, mas, nada funciona. Se quiserem, eu posto o xml das duas situações aqui.[/code]
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> NFe Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB