JAX-RS @MatrixParam Restful Webservice

In this tutorial we are going to see JAX-RS MatrixParam using RESTful web service @MatrixParam annotation. MatrixParam is set of name value pair separated by semi colon, for example name = value;

Create maven web application project and add Jersey dependency in pom.xml. Find Jersey 2.x maven dependency configuration below. If you are new to maven refer our maven tutorials.

Jersey 2.x dependency in pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.ehowtonow</groupId>
  <artifactId>RestTutorials</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>RestTutorials Maven Webapp</name>
  <url>http://maven.apache.org</url>
   <properties>
        <jersey2.version>2.19</jersey2.version>
        <jaxrs.version>2.0.1</jaxrs.version>
    </properties>
  <dependencies>
      <!-- JAX-RS -->
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
            <version>${jaxrs.version}</version>
        </dependency>
        <!-- Jersey 2.19 -->
        <dependency>
            <groupId>org.glassfish.jersey.containers</groupId>
            <artifactId>jersey-container-servlet</artifactId>
            <version>${jersey2.version}</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-server</artifactId>
            <version>${jersey2.version}</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-client</artifactId>
            <version>${jersey2.version}</version>
        </dependency>
  </dependencies>
  <build>
    <finalName>RestTutorials</finalName>
  </build>
</project>

MatrixParamService.java

package com.ehowtonow.webservice;

import javax.ws.rs.GET;
import javax.ws.rs.MatrixParam;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;

@Path("/tutorial")
public class MatrixParamService {

	@GET
	@Path("{site}")
	public Response getTutorial(@PathParam("site") String site,
			@MatrixParam("tutorial") String tutorial,
			@MatrixParam("rank") String rank) {
		return Response
				.status(200)
				.entity("Web Site : " + site + "  Tutorial : " + tutorial
						+ " Rank : " + rank).build();

	}

}

Configure Jersey 2.x Servlet dispatcher

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
	<display-name>Restful Webservice Example</display-name>
	<servlet>
		<servlet-name>jersey-serlvet</servlet-name>
		<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <init-param>
             <param-name>jersey.config.server.provider.packages</param-name>
			<param-value>com.ehowtonow.webservice</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>

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

http://localhost:8080/RestTutorials/rest/tutorial/javatutorialscorner.com;tutorial=webservice;rank=1


Ask your questions in eHowToNow Forum

Post your technical, non-technical doubts, questions in our site. Get answer as soon as possible, meanwhile you can help others by answering, unanswered questions.
To Ask new Question : Ask Question
Check our existing discussions : Questions & Answers

  1. Download Text file using JAX-RS RESTful Webservice
  2. JAX-RS get QueryParam using @Context UriInfo
  3. Restful Webservice HelloWorld Example Jersey 1.x
  4. JAX-RS @QueryParam with @DefaultValue – Jersey
  5. JAX-RS @FormParam Web service example
  6. JAX-RS @POST using RESTful web service – Jersey 1.x
  7. JAX-RS @MatrixParam Restful Webservice
  8. Download PDF file using JAX-RS RESTful Webservice
  9. JAX-RS Web Service to produce XML using JAXB
  10. Download Excel file using JAX-RS RESTful Webservice
  11. Download image using JAX-RS RESTful Webservice
  12. JAX-RS @PathParm Web service Example
  13. JAX-RS Get HTTP Headers using @Context
  14. JAX-RS Get HTTP Headers using @HeaderParam
  15. File Upload using JAX-RS RESTful Webservice (Jersey 2.x)

Be the first to comment

Leave a Reply