cancel
Showing results for 
Search instead for 
Did you mean: 

B2B - Inbound: Erro ao tentar ler email do provedor "Terra".

Former Member
0 Kudos

Pessoal!

Estou com problema no seguinte cenário:

O Fornecedor envia uma nota ao email cadastrado para Nota Fiscal Inbound, porém para os casos onde o email vem do "@terra.com.br" recebo o seguinte erro no Communication Channels Monitoring, no canal B2B - Mail - Sender:

exception caught during processing mail message[16]; java.lang.ClassCastException: class java.lang.String:null incompatible with interface com.sap.guid.IGUID:com.sap.engine.core.service630.container.ComponentClassLoader@eb4d977@library:com.sap.guid.


Efetuei testes com vários outros provedores de email e não obtive erro.

Alguém já enfrentou esse problema?


Obrigado,

Guilherme Mairene Rodrigues

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Guilherme, bom dia.

Conforme mensagem de erro "java.lang.ClassCastException: class java.lang.String:null incompatible with interface":


O problema pode estar no "cast" que obtém o payload(Payload) do Iterator(Attachment).


Compare as diferenças entre os payloads, pode ser algum mime do mail server.


Você está usando Adapter Module, utilize o XPI Inspector para análise.


Att.,

André Canalles

Former Member
0 Kudos

André,

Obrigado pela resposta!

Comparei diversos payloads e ambos tem a mesma estrutura. O erro ocorre também quando envio um email vazio, mas apenas quando vem do provedor "@terra.com.br".

Infelizmente não estou usando o XPI Inspector pois nosso cliente não nos concedeu as permissões necessárias para efetuar o Deploy da ferramenta.

Analisei os Modules do canal, o problema pode estar em algum Transform abaixo?

Grato,

Guilherme Mairene Rodrigues

Former Member
0 Kudos

Guilherme,

Os parâmetros abaixo existem no payload do e-mail ?

Content-Description: MailAttachment-1

Content-Disposition: attachment;filename="MailAttachment-1.xml"


Tente utilizar "somente" o parâmetro do module PayloadSwapBean:


payload-name: MailAttachment-1


Att.,

André Canalles


Former Member
0 Kudos

André,

De novo, muito obrigado pela ajuda.

Efetuei o teste deixando somente o Payload indicado por você, mas o erro persiste. O estranho é que, independente do conteúdo do email (efetuei testes com e sem anexo), o erro persiste apenas para o provedor "terra".

Será que não pode existir uma regra de rede entre servidor do PI e o servidor de email, bloqueando este provedor? Será que esta regra causaria este erro?

Grato,

Guilherme Mairene Rodrigues

Former Member
0 Kudos

Guilherme,

Neste caso, sugiro abertura de um chamado, pode ser necessário a atualização de algum componente(SAP_XITOOL / SAP_XIAF).

Att.,

André Canalles

former_member182503
Active Contributor
0 Kudos

Guilherme,

O Adapter está marcado para usar mail package?

Você pode comparar um email enviado pelo terra com email enviado por outros provedores, por exemplo, exibindo a versão original da mensagem e procurando por diferenças.

[]'s

JN    

Former Member
0 Kudos

Jose,

Obrigado pela resposta!

A opção "use mail package" do canal mail sender não está ativa.

O "content encoding" está setado com valor base64.

Será que isso está fazendo com que o email esteja sendo desconsiderado?

Grato,

Guilherme Mairene Rodrigues

former_member182503
Active Contributor
0 Kudos

Guilherme,

eu faria um teste apenas para ver se passa com essa opção selecionada, mas claro que isso também iria alterar o comportamento da aplicação (interface PI dali pra frente).

Se com Mail Package setado ele consegue receber o email do terra, já será um ponto de partida para vocês. Não descarto a idéia de abrir um chamado, muito menos de analizar o conteúdo original do e-mail.

[]'s

Former Member
0 Kudos

Nunes,

Efetuei esse teste no nosso ambiente de homologação, ainda sem sucesso. Também testei colocando a opção "use mail package", mas ainda sem evolução.

Abri um chamado na SAP para este caso. Em paralelo estou instalando a ferramenta XPI Inspector para seguir com uma análise paralela.

Assim que resolver o caso, posto a solução.

Obrigado pela ajuda!

Guilherme Mairene Rodrigues

RafaelVieira
Active Participant
0 Kudos

Guilherme,

Será que o email do terra não envia os dados de body como um anexo?

Já vi acontecer isso.

Nesse caso, ele assumiria o corpo do email ou a assinatura ou algum outro objeto como o anexo 1.

Não sei se você vê da mesma forma que eu mas, essa configuração de considerar o attachment-1 é um hard code que se vier algo diferente daquilo, sua interface não vai funcionar.

Faça um teste retirando o payloadswapbean e executando a interface com o módulo original de email. Se funcionar para o email do Terra, não vai funcionar para os outros (que precisam do payloadswapbean pra pegar o attachment-1)

Abraço.

Rafael Vieira.

Former Member
0 Kudos

Rafael,

Também suspeitei deste cenário, mas ainda não fiz este teste. Apenas troquei as ordens dos parâmetros no Module, sem avanço.

Assim que finalizar os testes, posto o resultado.

Obrigado,

Guilherme Mairene Rodrigues

Former Member
0 Kudos

Guilherme, boa tarde.

Você teve algum retorno da SAP, chegou a resolver o problema ?

Abs,

André Canalles

Former Member
0 Kudos

André,

Desculpe, esqueci de atualizar o tópico. A SAP gerou uma nova nota e o problema foi corrigido:

Hello Customer
The patch is available in Service Marketplace. Following are the patch
details:
SCV-Name: XI ADAPTER FRAMEWORK CORE 7.02, SP: 000013, Patch: 000007
Please follow the note 2000632 for details.
Thanks and Best Regards
Harsh


Obrigado a todos.

Answers (1)

Answers (1)

Former Member
0 Kudos

Olá Guilherme, boa tarde.

Também estou com esse mesmo problema faz algum tempo, já tentei varias alternativas porém sem sucesso.

Percebi também que não acontece com todos e-mails.

Vou acompanhar as postagem aqui, e caso eu encontre alguma solução eu posto.

Segue o log do XPI Inspector:, não sei se ajuda muito:

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[8]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[7]; java.io.IOException: invalid syntax in MIME header: -inner

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[6]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[5]; java.io.IOException: invalid syntax in MIME header: -inner

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[4]; java.io.IOException: invalid syntax in MIME header: -inner

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[3]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[2]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:33:03 BRT 2014 exception caught during processing mail message[1]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:32:17 BRT 2014 exception caught during processing mail message[8]; java.lang.ClassCastException: java.lang.String incompatible with com.sap.guid.IGUID

Thu Feb 27 15:32:17 BRT 2014 exception caught during processing mail message[7]; java.io.IOException: invalid syntax in MIME header: -inner

Former Member
0 Kudos

Exato! Não acontece com todos. No meu caso, consegui restringir para os rementes do Terra.

Qualquer alteração no cenário, postarei aqui.

Obrigado,

Guilherme Mairene Rodrigues