Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Qua Jan 24, 2024 10:13 am Assunto: Baixar anexo PDF do XML |
|
|
Bom dia.
Pessoal, preciso de uma ajuda de vocês, tenho um xml nesse formato:
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: binary
Content-ID: <root.message@cxf.apache.org>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns7:entregarManifestacaoProcessualResposta xmlns="http://www.cnj.jus.br/tipos-servico-intercomunicacao-2.2.3.1" xmlns:ns2="http://www.cnj.jus.br/intercomunicacao-2.2.3.1" xmlns:ns3="http://www.cnj.jus.br/mni/cda-2.2.3.1" xmlns:ns4="http://www.cnj.jus.br/mni/eleicao-2.2.3.1" xmlns:ns5="http://www.cnj.jus.br/mni/criminal-2.2.3.1" xmlns:ns6="http://www.stj.jus.br/mni/v100/intercomunicacao" xmlns:ns7="http://www.cnj.jus.br/servico-intercomunicacao-2.2.3.1/"><sucesso>true</sucesso><mensagem>Manifestação processual recebida com sucesso</mensagem><protocoloRecebimento>08022910620238190041</protocoloRecebimento><dataOperacao>2023/12/20 12:59:41</dataOperacao>
<recibo><xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:15e39d21-fe44-4dc1-b8a4-5d09bacc6b59-1619@www.cnj.jus.br"/></recibo></ns7:entregarManifestacaoProcessualResposta></soap:Body></soap:Envelope>
--uuid:5b02092b-32c8-4c4f-9c4d-8224afcd5e0b
Content-Type: application/pdf
Content-Transfer-Encoding: binary
Content-ID: <15e39d21-fe44-4dc1-b8a4-5d09bacc6b59-1619@www.cnj.jus.br>
%PDF-1.4
%âãÏÓ
2 0 obj
<</ColorSpace/DeviceGray/Subtype/Image/Height 86/Filter/FlateDecode/Type/XObject/Width 79/Length 2469/BitsPerComponent 8>>stream
xœY XSW;¢ R@\Š8®7tÜÛÂhµbµ~~ÝÇ7:EfTªa´: ŠÕ¬¢²T€àFeUY4ÂfH€dO^ò^’÷æe/{aþï“÷î}÷ü9÷žsÏ9÷J XÅÏ7fxèÞwæa}´MÅGV»;¨Þƒ¨ƒ{†Cæ±ô*3ù~ú¤é;F}Ûñ>õ.q•ÛŸ'qºõ d”Zý¯ãxgK;+îCù¹{èÌøÉ®ê!ÿ-™äa•ƒ É}aN¿(V</ãN‡AØU
»Óxɼ„iÇç¬ï¦Ú]¸¸8¼p낇Ÿ3²¤«Œ>Q‹¯Êš;3Èk—¹•å¤Âyñ±—n´oÖà¡ÎèH ‘\ÞØ|Ž ˆRZX„ |V{>PËOæ4^Üíc¯U2o.ë~Ú MwÞô´”õÆÊ;U•è?v%råñíÉö.Þzùá›jQ ‚ðJ™'Ôtpu¢G@½ ˆ_ãcÛôE|®VR.(ShH õHNã“Ìû;Z¥q
rž6ß-då7H|·N‘z)[Ž`tµtPnP•'6…»ÿu–Wêf±BDú¨y÷Šˆªî~0—YׂcS²"E ƒ;H¾$>Äþ²\çg^Ëw;äg£8‡ïÓ»°ò¼^ûTH›øšw¾¸ë&ãè%„~b³Y:×U…òx¢¸?7¬—£+
Ëêtr¤„<Î>lžÎøSŽ G†HÈlC¬á r°ß_®Ý<Ñ‚Ibø%¨õ
Gostaria que pudessem me ajudar a como baixar esse anexo que está na TAG "recibo", pois não tenho a mínima ideia de como fazer. Alguém teria um fonte de exemplo ou pudesse me indicar um lugar que tem um exemplo pra me espelhar?
obs: utilizo delphi xe2.
Grato. |
|
Voltar ao Topo |
|
|
johnny-walker Moderador
Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Qui Fev 01, 2024 7:18 am Assunto: |
|
|
Amigo, carrego o conteúdo do node específico para um stream e salve como pdf, pois se o conteúdo for binário dá para fazê-lo.
Exceto se estiver codificado para base64, neste caso teria de decodificar e jogar numa stream para salvar o arquivo.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
Voltar ao Topo |
|
|
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Qui Fev 01, 2024 9:01 am Assunto: |
|
|
johnny-walker escreveu: | Amigo, carrego o conteúdo do node específico para um stream e salve como pdf, pois se o conteúdo for binário dá para fazê-lo.
Exceto se estiver codificado para base64, neste caso teria de decodificar e jogar numa stream para salvar o arquivo.
bye |
Bom dia.
Obrigado pela resposta, mais eu já tentei fazer isso e na hora que salva em PDF, ele não abre. Fala que está corrompido.
Eu pesquisei em vários sites e não consegui muita coisa, alguns falam de fazer uma requisição "POST", só que eu não sei como montar o xml e o endereço. |
|
Voltar ao Topo |
|
|
johnny-walker Moderador
Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Sex Fev 09, 2024 11:53 am Assunto: |
|
|
Como disse tente verificar o formato que está codificado.
Outro coisa, tente jogar o conteúdo numa TStringStream, talvez dê certo.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
Voltar ao Topo |
|
|
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Sex Fev 09, 2024 5:35 pm Assunto: |
|
|
johnny-walker escreveu: | Como disse tente verificar o formato que está codificado.
Outro coisa, tente jogar o conteúdo numa TStringStream, talvez dê certo.
bye |
Boa tarde.
Obrigado novamente pela resposta, porém já tentei isso. Já tentei descodificar, jogar direto na TStringStream e nada.
Acredito que teria que fazer aquele método POST, só que eu não sei como fazer ele com base nessas informações do XML. |
|
Voltar ao Topo |
|
|
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Qua Fev 14, 2024 3:59 pm Assunto: |
|
|
johnny-walker escreveu: | Amigo, carrego o conteúdo do node específico para um stream e salve como pdf, pois se o conteúdo for binário dá para fazê-lo.
Exceto se estiver codificado para base64, neste caso teria de decodificar e jogar numa stream para salvar o arquivo.
bye |
Boa tarde.
Teria como pegar esse conteúdo e em vez de jogar em um Stream, jogar numa varável Blob e salvar como PDF? Tentei procurar na internet e não consegui achar por variável, alguém sabe como fazer? |
|
Voltar ao Topo |
|
|
marcieldeg Colaborador
Registrado: Terça-Feira, 5 de Abril de 2011 Mensagens: 1054 Localização: Vitória - ES
|
Enviada: Qui Fev 22, 2024 7:14 pm Assunto: |
|
|
Este retorno não é um XML, é um multipart/form-data. Note que há dois corpos: o primeiro é o XML de resposta com dados e o segundo um PDF. Normalmente se usa multipart/form-data no body da request, mas também pode ser usado na response, apesar de pouco comum.
A forma de processar depende do componente que está utilizando na leitura. Se estiver usando o Indy, você pode tentar utilizar o TIdMultiPartFormDataStream.
Outra forma menos bonita é ler o conteúdo como Stream a partir de %PDF-... que é onde inicia o PDF. Mas para isso é necessário ler os dados como array de bytes, e não como texto, senão o resultado pode ser corrompido. _________________ "Olha a interface da IDE! Será que ela é? Será que ela é? DELPHI!" |
|
Voltar ao Topo |
|
|
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Seg Fev 26, 2024 8:46 am Assunto: |
|
|
marcieldeg escreveu: | Este retorno não é um XML, é um multipart/form-data. Note que há dois corpos: o primeiro é o XML de resposta com dados e o segundo um PDF. Normalmente se usa multipart/form-data no body da request, mas também pode ser usado na response, apesar de pouco comum.
A forma de processar depende do componente que está utilizando na leitura. Se estiver usando o Indy, você pode tentar utilizar o TIdMultiPartFormDataStream.
Outra forma menos bonita é ler o conteúdo como Stream a partir de %PDF-... que é onde inicia o PDF. Mas para isso é necessário ler os dados como array de bytes, e não como texto, senão o resultado pode ser corrompido. |
Bom dia.
Vou tentar das 2 formas e depois posto o resultado. Obrigado pela resposta. |
|
Voltar ao Topo |
|
|
Spyke2013 Novato
Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 19
|
Enviada: Ter Fev 27, 2024 10:43 am Assunto: |
|
|
marcieldeg escreveu: | Este retorno não é um XML, é um multipart/form-data. Note que há dois corpos: o primeiro é o XML de resposta com dados e o segundo um PDF. Normalmente se usa multipart/form-data no body da request, mas também pode ser usado na response, apesar de pouco comum.
A forma de processar depende do componente que está utilizando na leitura. Se estiver usando o Indy, você pode tentar utilizar o TIdMultiPartFormDataStream.
Outra forma menos bonita é ler o conteúdo como Stream a partir de %PDF-... que é onde inicia o PDF. Mas para isso é necessário ler os dados como array de bytes, e não como texto, senão o resultado pode ser corrompido. |
Bom dia.
Tentei alguns exemplos que consegui pela internet e não funcionou, teria como me passar um exemplo de como faz essa operação ("ler o conteúdo como Stream....")?
Eu leio o xml como string e pego seus valores, se puder me ensinar, agradeço desde já.
Grato. |
|
Voltar ao Topo |
|
|
marcieldeg Colaborador
Registrado: Terça-Feira, 5 de Abril de 2011 Mensagens: 1054 Localização: Vitória - ES
|
|
Voltar ao Topo |
|
|
|