Questão de Arquitetura de Software — SOAP (Simple Object Access Protocol) — FGV 2024
Arquitetura de Software›SOAP (Simple Object Access Protocol)
Código
fg077372
Banca
FGV
Órgão
CVM
Ano
2024
Nível
Superior
Cargo
Analista - Perfil 8 - TI / Sistemas e Desenvolvimento - Tarde
O analista João desenvolveu o web service cvmWS, com base no protocolo Simple Object Access Protocol (SOAP). A fim de otimizar a serialização de um arquivo binário anexo à mensagem SOAP, João implementou em cvmWS a especificação SOAP Message Transmission Optimization Mechanism (MTOM).Quando a serialização otimizada do MTOM é bem-sucedida, os clientes do cvmWS devem ler o conteúdo do arquivo anexo contido:
Adentro do envelope SOAP, no elemento xop;
Bfora do envelope SOAP, no corpo da mensagem;
Cdentro do envelope SOAP, no elemento binaryData;
Ddentro do envelope SOAP, no elemento base64Binary;
Efora do envelope SOAP, em uma mensagem subsequente.
Revelar gabarito e comentário▾
GabaritoB — fora do envelope SOAP, no corpo da mensagem;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Gabarito: letra B. Quando um serviço SOAP utiliza a especificação MTOM para otimizar a transmissão de dados binários, o conteúdo do arquivo anexo é colocado fora do envelope SOAP, no corpo da mensagem (como um anexo MIME), enquanto o envelope contém apenas uma referência (elemento xop:Include). Os clientes devem, portanto, ler o anexo fora do envelope.
O MTOM (SOAP Message Transmission Optimization Mechanism) é um padrão W3C que permite que dados binários sejam transmitidos de forma mais eficiente, evitando a codificação base64 dentro do envelope. Em vez disso, o envelope SOAP contém um elemento xop:Include que faz referência ao dado binário real, que é transmitido como uma parte MIME separada, fora do envelope, no corpo da mensagem multipart/related.
1Envelope SOAP
2Contém xop:Include (referência)
3Dado binário fora do envelope
4Anexo MIME no corpo da mensagem
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
O elemento xop é usado dentro do envelope SOAP como uma referência ao dado binário (xop:Include), mas não contém o conteúdo do arquivo. O conteúdo real está no anexo MIME, fora do envelope.
Alternativa B — ✅ Correta ⟵ GABARITO
Conforme a especificação MTOM, o dado binário otimizado é transmitido em um anexo MIME separado, localizado fora do envelope SOAP, no corpo da mensagem. O envelope contém apenas a referência.
Alternativa C — ❌ Incorreta
Não existe um elemento binaryData na especificação SOAP ou MTOM. O dado binário não fica dentro do envelope.
Alternativa D — ❌ Incorreta
Sem o MTOM, o dado binário poderia ser codificado em base64 e colocado dentro do envelope. Porém, com o MTOM, a otimização remove o dado de dentro do envelope, colocando-o fora. Portanto, com MTOM, o anexo não está em base64Binary dentro do envelope.
Alternativa E — ❌ Incorreta
O MTOM transmite o dado binário na mesma mensagem (como parte de uma estrutura multipart/related), não em uma mensagem subsequente.
NÃO CAIA NESSA!
A pegadinha clássica sobre MTOM é achar que o binário continua dentro do envelope (como no SOAP tradicional com base64). Lembre-se: MTOM = otimização = binário fora do envelope, referenciado via xop:Include. Na prova, ao ver "MTOM", associe automaticamente a "anexo MIME externo ao envelope".