Questão FC266237
Considere o trecho de código abaixo: package javaeetutorial.hello; import javax.ws.rs.*; @Path("helloworld") public class HelloWorld { @Context private UriInfo context; public Hell
Plataforma Java EE
IDECAN · 2019
Considere o trecho de código abaixo:
package javaeetutorial.hello;
import javax.ws.rs.*;
@Path("helloworld")
public class HelloWorld {
@Context
private UriInfo context;
public HelloWorld() { }
@GET
@Produces("text/html")
public String getHtml() {
return "<html lang=\"en\"><body><h1>Hello,
World!!</h1></body></html>";
}
}
Em relação às anotações presentes no código, assinale a alternativa que contém uma descrição correta do efeito obtido.
- A anotação @Path é relativa ao caminho no sistema de arquivos no qual está o código do Web Service.
- A anotação @GET se refere aos métodos get/set, padrão comum para implementar encapsulamento.
- O valor da anotação @Path é relativo ao caminho URI.
- A anotação @GET deveria ser seguida da anotação @SET. A ausência de @SET irá causar um erro de compilação.
- A anotação @GET deveria ser seguida da anotação @SET. A ausência de @SET irá causar um aviso (warning) durante a compilação.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
@Path indica o segmento de endereço em que o recurso REST estará disponível: seu valor é um caminho relativo dentro da URI do serviço, não uma URL absoluta.
Na prática, o valor de @Path na classe define o nível da classe (base do recurso) e um eventual @Path em métodos é concatenado a esse valor, formando a URI final atendida pelo método.
Esse caminho relativo é resolvido em tempo de execução junto ao contexto da aplicação (por exemplo, o context root e/ou @ApplicationPath), permitindo compor URIs como /contexto/base/recurso. Também aceita templates (ex.: @Path("itens/{id}")).
Portanto, afirmar que o valor de @Path é relativo ao caminho URI expressa corretamente seu papel na definição do endereço dos recursos REST.
Conteúdo do catálogo FC Concursos · Atualizado em