DEV Community

Cover image for How to return a response with OK HTTP Status Code with Jax-Rs
Adrian Matei for Codever

Posted on

How to return a response with OK HTTP Status Code with Jax-Rs

Use the ok() method of the javax.ws.rs.core.Reponse class to create a ReponseBuilder with a status of 200 (OK),
or the ok(Object entity) to return OK with data

import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

@Path("comparison")
@Stateless
@Tag(name = "Comparison")
public class ComparisonRestResource {

  @Inject private ComparisonService comparisonService;

  @HEAD
  @Operation(
      summary = "Ping HEAD",
      description = "Check availability of the resource. ")
  @ApiResponses(@ApiResponse(responseCode = "200", description = "Service is reachable via HTTP"))
  public Response head() {
    return Response.ok().build();
  }

  @GET
  @Produces(MediaType.TEXT_PLAIN)
  @Operation(
      summary = "Ping GET",
      description = "Check availability of the example resource. ")
  @ApiResponses(@ApiResponse(responseCode = "200", description = "Service is reachable via HTTP"))
  public Response ping() {
    return Response.ok("pong").build();
  }
}
Enter fullscreen mode Exit fullscreen mode

Note that the ok() methods shown before are just shortcuts for

return Response
        .status(Response.Status.OK)
        .build()
Enter fullscreen mode Exit fullscreen mode

and

return Response
        .status(Response.Status.OK)
        .entity("pong")
        .build()
Enter fullscreen mode Exit fullscreen mode

respectively.


Shared with ❤️ from Codever. Use 👉 copy to mine functionality to add it to your personal snippets collection.

Discussion (0)