Lista de Exercícios de Arquitetura Orientada a serviços – SOA e Webservices – Lista 6 (10 Questões)
Questão 1
Qual das opções abaixo NÃO é uma característica do XML-RPC?
a) Criado para ser tão simples quanto possível, definindo as interfaces de chamadas remotas, mas não implementando os métodos ouvintes nos servidores.
b) Utiliza um vocabulário baseado em JSON.
c) Tem uma quantidade limitada de comandos (tags) para descrever funções, tipos de parâmetros e tipos de retorno.
d) Utiliza o HTTP para o transporte na Internet.
e) Voltado para a comunicação computador a computador, e não de usuário a computador.
Questão 2
Em termos de XML-RPC, quando ocorre um erro no atendimento à solicitação, a mensagem referente a este erro será retornada em que elemento da resposta?
a) params
b) faultCode
c) faultString
d) param
e) methodName
Questão 3
Com relação à sintaxe do SOAP, qual das opções está INCORRETA?
a) A mensagem é criada com uso de XML.
b) Precisa do namespace soap-envelop.
c) Precisa do namespace soap-encoding.
d) Pode ser utilizado um DTD.
e) Não são permitidas instruções de processamento XML.
Questão 4
“Para o SOAP a seção _________ é opcional, e permite a inclusão de informações específicas do aplicativo, como autenticação e pagamento, por exemplo. Se esta seção estiver presente deverá constar como o primeiro elemento filho do envelope.”
Qual opção preenche corretamente a lacuna?
a) Body
b) Footer
c) Fault
d) Header
e) Tail
Questão 5
Considere as afirmativas abaixo, com relação ao SOAP:
I – Objetiva a comunicação entre o servidor e o usuário final.
II – Permite a comunicação na Internet de forma transparente aos firewalls.
III – Utiliza sintaxe JSON.
IV – É independente de plataforma e de linguagem de programação.
Qual a opção que indica a quantidade de afirmativas corretas?
a) As quatro estão corretas.
b) Apenas três estão corretas.
c) Apenas duas estão corretas.
d) Apenas uma está correta.
e) Nenhuma das afirmativas está correta.
Questão 6
Para Web Services SOAP é utilizado um descritor de serviços denominado:
a) WSDL
b) UDDI
c) XML
d) SOAP
e) REST
Questão 7
Para definir um Web Service em linguagem Java através de anotações, a classe deve ser anotada com _________, cada método que precise ser exposto como serviço deve ser anotado com __________, e cada parâmetro presente em cada um desses métodos deve ser anotado com _________.
Qual opção preenche corretamente as lacunas?
a) @Stateless, @EJB e @Servlet
b) @Stateless, @EJB e @MessageDriven
c) @WebParam, @WebMethod e @WebService
d) @Override, @Remote e @Local
e) @WebService, @WebMethod e @WebParam
Questão 8
Um componente de grande relevância nos ambientes de computação distribuída é o sistema de registro, normalmente um serviço de nomes e diretórios. Quais são, respectivamente, os sistemas de registro para RMI-IIOP, CORBA e Web Services?
a) RMI Registry, COS Naming e UDDI.
b) JNDI, COS Naming e UDDI.
c) WSDL, UDDI e SOAP.
d) JNDI, COS Naming e WSDL.
e) WSDL, CORBA IDL e RMI Registry.
Questão 9
Considerando-se os documentos WSDL, qual elemento é relacionado a “um conjunto abstrato de operações apoiados por um ou mais endpoints”?
a) Message
b) Types
c) Binding
d) PortType
e) Service
Questão 10
Qual o tipo de Web Service que trabalha com envio e recepção de objetos, e permite uso tanto de XML quanto JSON?
a) SOAP
b) WADL
c) WSDL
d) UDDI
e) RESTful
RESPOSTA
Questão 1 – B
Justificativa: A tecnologia XML-RPC utiliza um vocabulário baseado em XML. As demais opções estão corretas.
Questão 2 – C
Justificativa: A chamada dos procedimentos está sujeita a falhas, e uma resposta indicando que algo errado ocorreu utilizará o elemento fault. Este elemento pode ser definido como uma estrutura composta do código do erro (faultCode) e mensagem do erro (faultString).
Questão 3 – D
Justificativa: A sintaxe do SOAP não permite o uso de DTD. As demais opções estão corretas.
Questão 4 – D
Justificativa: A opção Header preenche corretamente a lacuna. A seção Body está relacionada à chamada e resposta do serviço, e a seção Fault refere-se à ocorrência de um erro qualquer. Quanto a Footer e Tail, estas opções não existem no SOAP.
Questão 5 – C
Justificativa: As afirmativas II e IV estão corretas, no entanto a I está incorreta, pois o foco do SOAP é a comunicação entre aplicativos, e a III está incorreta pelo fato de ser utilizado XML, e não JSON.
Questão 6 – A
Justificativa: Além do protocolo SOAP, utilizado na comunicação entre aplicativos para Web Services deste tipo, será necessário também um descritor de serviços, o WSDL (Web Service Description Language). É através deste WSDL que diversas IDEs, como Visual Studio e NetBeans, conseguem criar o cliente com as chamadas corretas, deixando o programador com a sensação de que está fazendo uma simples chamada local, e sem envolver nenhum esforço para o mesmo na criação dos stubs de comunicação.
Questão 7 – E
Justificativa: As anotações utilizadas para definir o Web Service são:
@WebService – define a classe como um serviço na Web.
@WebMethod – define um método para este serviço.
@WebParam – utilizado para definir parâmetros de chamada de um determinado método do Web Service.
Questão 8 – B
Justificativa: O quadro seguinte mostra uma síntese das diversas plataformas e componentes.
Segundo o quadro, o RMI-IIOP utiliza JNDI, CORBA utiliza COS Naming e os Web Services trabalham com UDDI.
Questão 9 – D
Justificativa: Um documento WSDL usa os seguintes elementos na definição de serviços de rede:
– Types – Um recipiente para definições de tipo de dados usando algum tipo de gramática (como XSD).
– Message – Uma definição abstrata do formato de dados da comunicação.
– Operation – Uma descrição abstrata de uma ação suportada pelo serviço.
– PortType – Um conjunto abstrato de operações apoiadas por um ou mais endpoints.
– Binding – Um protocolo concreto e especificação do formato de dados para um tipo de porta (PortType) particular.
– Port – Um endpoint simples, definido como uma combinação de um binding e um endereço de rede.
– Service – uma coleção de endpoints relacionados.
Questão 10 – E
Justificativa: Para RESTful Web Services, onde REST significa REpresentational State Transfer), as mensagens podem utilizar sintaxe XML ou JSON (Java Script Object Notation). Diferentemente do SOAP, que foca as chamadas de métodos remotos, o REST trabalha com envio e recepção de objetos ou recursos.
Quanto às demais opções, WADL descreve um Web Service REST, enquanto WSDL descreve um do tipo SOAP, e UDDI é o serviço de registro e localização de Web Services.
Se você tiver alguma dúvida ou correção a fazer, por favor, comente! Obrigado!