Sunday 13, Apr 2025
We are moved to new domain
Click -> www.ehowtonow.com
Saturday, 30 November 2013

JAX-RS Get HTTP Headers using @Context


In this tutorial we are going to see how to get HTTP request header using JAX-RS  RESTful web service @Context
1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project .
2. Create the Project called RESTful-WebService
3. Add the following jar into WEF-INF/lib folder
add jar
4. Create package called com.javatutorialscorner.jaxrs.httpheader under RESTful-WebService
5. Create Java class HTTPHeaderService2 under com.javatutorialscorner.jaxrs.httpheader package
HTTPHeaderService2.java
01.package com.javatutorialscorner.jaxrs.httpheader;
02. 
03.import javax.ws.rs.GET;
04.import javax.ws.rs.Path;
05.import javax.ws.rs.core.Context;
06.import javax.ws.rs.core.HttpHeaders;
07.import javax.ws.rs.core.Response;
08. 
09.@Path("/tutorial")
10.public class HTTPHeaderService2 {
11. 
12. @GET
13. @Path("/java-tutorial-corner")
14. public Response getTutorial(@Context HttpHeaders httpHeaders) {
15.  String userAgent = httpHeaders.getRequestHeader("user-agent").get(0);
16.  return Response
17.    .status(200)
18.    .entity("User Agent Details : " + userAgent).build();
19. }
20.}

6.Configure Jersey Servlet Dispatcher
you need to configure REST as servlet in web.xml.
web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>JAX-RS-Path</display-name>
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.javatutorialscorner.jaxrs.httpheader</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>

The servlet class available in jersey com.sun.jersey.spi.container.servlet.ServletContainer. The init param com.sun.jersey.config.property.package is used to define in which package jersey will look for the service classes.This package points to your resource class package. URL pattern is the part of base URL

Now you can run the service and access the service by calling the following URL

http://localhost:8080/RESTful-WebService/rest/tutorial/java-tutorial-corner/

Output
output

Note : in this tutorials I used user-agent alone. You can access all http headers using @Context

Shop and help us

Flipkart Offer Snapdeal offer Amazon.in offer Amazon.com offer

Related Posts:

  • Hello World RESTful Web serviceCreate new Dynamic Web Project and  give project name as RESTful_HelloWorld Copy all jar files into WEB-INF/lib folder.Select build path add jar in your build path.Create ClassCreate package called com.javatutorialscorn… Read More
  • JAX-RS Single Param with @PathParmIn this tutorial we are going to see how to pass parameter to RESTful web service via URL using @PathParam1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project . 2. Create the Project called R… Read More
  • JAX-RS @PATH for URIIn previous tutorials we have seen simple Hello World RESTful Web service using JAX-RS.In this tutorial we will we see @PATH annotation used for URI in RESTful web service.follow the steps given belowCreate new Dynamic Web Pr… Read More
  • JAX-RS Multiple Parameter with @PathParamIn this tutorial we are going to see how to pass multiple parameters to RESTful web service via URL using @PathParam 1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project . 2. Create the Proje… Read More
  • REST - Representational State TransferREST-IntroductionREST is short form of Representational State TransferRest is architectural style web service which is based on web standards and http protocols(get,post,put,delete).REST was invented by Roy Fielding in 2000.I… Read More
  • Blogger Comments
  • Facebook Comments
  • Disqus Comments

0 comments:

Post a Comment

Item Reviewed: JAX-RS Get HTTP Headers using @Context Rating: 5 Reviewed By: eHowToNow