No contexto do JBoss Enterprise Application Platform, versão...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a B - javax.ws.rs.core.Application.
Ao trabalhar com o JAX-RS, que é a API do Java para o desenvolvimento de serviços Web RESTful, há uma necessidade fundamental de configurar a aplicação para que ela seja capaz de servir os recursos Web (web resources) e os provedores (providers). A classe javax.ws.rs.core.Application é a base para essa configuração. Ela é usada para definir quais classes e instâncias serão registradas e como os serviços REST serão disponibilizados.
Essa classe é uma abstração que representa a aplicação JAX-RS como um todo. Ao criar uma subclasse de Application
, o desenvolvedor pode sobrepor o método getClasses
ou getSingletons
para especificar os recursos e provedores que farão parte dessa aplicação. Isso é crucial porque permite ao framework saber quais classes devem ser consideradas como parte do serviço REST.
As demais alternativas não são apropriadas para definir uma aplicação JAX-RS:
javax.ws.rs.core.WebResource
não é uma classe do JAX-RS e, portanto, não pode ser usada para definir uma aplicação.javax.ws.rs.core.Provider
é uma anotação que pode ser usada para indicar que uma classe é um provedor no JAX-RS, mas ela não serve para definir a aplicação como um todo.javax.ws.rs.core.API
também não faz parte da API JAX-RS e, consequentemente, não é a escolha correta para se estender ao implementar uma aplicação JAX-RS.
Portanto, a alternativa correta, B - javax.ws.rs.core.Application, é essencial para o desenvolvimento de aplicações RESTful usando JAX-RS porque permite a configuração e o registro dos componentes necessários para a aplicação funcionar corretamente e estar em conformidade com os padrões REST.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Gabarito:B.
JAX-RS é uma API Java para facilitar o desenvolvimento de aplicações que utilizam a arquitetura REST. Seus principais componentes são:
•Uma subclasse de Application, usada para configurar a aplicação, mapear o nome do contexto e listar outras classes que fazem parte da aplicação (opcional).
•Root resource classes,classes mapeadas a XML ou JSON que definem a raiz de um recurso mapeado a um caminho de URI
•Resource methods,métodos de um Root resource class, que são mapeados automaticamente a métodos HTTP GET, POST, etc.
•Providers,operações que produzem ou consomem representações de entidades em outros formatos (ex: XML, JSON)
Fonte:http://www.argonavis.com.br/cursos/java/j500/ApostilaJAXRS.pdf
javax.ws.rs.core Class Application
Defines the components of a JAX-RS application and supplies additional meta-data. A JAX-RS application or implementation supplies a concrete subclass of this abstract class.
The implementation-created instance of an Application subclass may be injected into resource classes and providers using Context.
In case any of the Application subclass methods or it's constructor throws a RuntimeException, the deployment of the application SHOULD be aborted with a failure.
https://docs.oracle.com/javaee/7/api/javax/ws/rs/core/Application.html
https://www.ibm.com/docs/pt-br/was-nd/8.5.5?topic=cjrwa-configuring-jax-rs-applications-using-jax-rs-11-methods
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo