You are on page 1of 14

7/27/13

Jersey hello world example


Advertise

Home

All Tutorials

Java Core

JSF

Spring

Hibernate

Struts

Android

Contact Us

Write For Us

RSS feed

Others

Jersey Hello World Example


Posted on July 18, 2011 ,
By mkyong

Last modified : August 29, 2012

11

5
Like

2
Tw eet

Jersey, reference implementation to develope RESTful web service based on the JAX-RS (JSR 311) specification.
In this tutorial, we show you how to develop a simple hello world REST web application with Jersey.
Technologies and Tools used in this article:
1. Jersey 1.8
2. JDK 1.6
3. Tomcat 6.0
4. Maven 3.0.3
5. Eclipse 3.6

Mkyong
Like

Note
If you want to know what and how REST works, just search on Google, ton of available resources.

18,547 people like Mkyong.

1. Directory Structure
This is the final web project structure of this tutorial.

F acebook social plugin

Agoda's Best Hotel Offers Save up to 75% Instant confirmation Use your reward points and save! Agoda.com/Hotel_Discounts
REST Test Client Quick, No pain REST service testing Contact us and save 10% wcfstorm.com
$2.95 - Java/JSP Hosting JSP/Java, Servlet Hosting $2.95/mo. Tomcat, Sruts, PHP 5, My SQL 5 www.MochaHost.com

2. Standard Web Project


www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

1/14

7/27/13

Jersey hello world example

Create a standard Maven web project structure.

mvn archetype:generate -DgroupId=com.mkyong.rest -DartifactId=RESTfulExample


-DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

Note
To support Eclipse, use Maven command :

mvn eclipse:eclipse -Dwtpversion=2.0

3. Project Dependencies
Jersey is published in Java.net Maven repository. To develop Jersey REST application , just declares jersey-server in
Maven pom.xml.
File : pom.xml

<project ...>
<repositories>
<repository>
<id>maven2-repository.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2/</url>
<layout>default</layout>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
</project>

4. REST Service
Simple REST service with Jersey.

package com.mkyong.rest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;
@Path("/hello")
public class HelloWorldService {
@GET
@Path("/{param}")
public Response getMsg(@PathParam("param") String msg) {
String output = "Jersey say : " + msg;
return Response.status(200).entity(output).build();
}
}

5. web.xml
www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

2/14

7/27/13

Jersey hello world example

In web.xml, register com.sun.jersey.spi.container.servlet.ServletContainer, and puts your Jersey service folder


under init-param, com.sun.jersey.config.property.packages.
File : web.xml

<web-app id="WebApp_ID" version="2.4"


xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Restful Web Application</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.mkyong.rest</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>

6. Demo
In this example, web request from projectURL/rest/hello/ will match to HelloWorldService, via @Path("/hello").
And the {any values} from projectURL/rest/hello/{any values} will match to parameter annotated with @PathParam.
URL : http://localhost:8080/RESTfulExample/rest/hello/mkyong

Download Source Code


Download it JAX-RS-Hello-World-Jersey-Example.zip (6 KB)

References
1.
2.
3.
4.
5.

Jersey Official Website


RESTEasy hello world example
REST with Java (JAX-RS) using Jersey Tutorial
IBM : RESTful Web services: The basics
RESTful Web Services

Tags :

hello world

jax-rs

jersey

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

3/14

7/27/13

Jersey hello world example

mkyong
Founder of Mkyong.com, love Java and open source stuffs. Follow him on Twitter, or befriend him
on Facebook or Google Plus.

Here are some of my favorite books

Head First

Design

Effective

Spring

JavaScript

Java

Pattern

Java

Recipes

Ninja

Related Posts

Popular Posts

RESTful Java client with Jersey client

Top 8 Java People You Should Know

JSON example with Jersey + Jackson

Top 20 Java Websites

File upload example in Jersey

Top 5 Free Java eBooks

Jersey : The ResourceConfig instance does not

Top 10 Java Regular Expression Examples

contain any root resource classes

Top 5 Open Source Q&A Systems

ClassNotFoundException :
com.sun.jersey.spi.container.servlet.ServletContainer

You might also like following tutorials :

Karthik

July 17, 2013 at 2:28 pm

Hi Mkyong,
Tried this example in RAD (with WebSphere App Server), when I try to access the url */rest/json/metallic/get, I get
Error 404: Not Found, below are the logs when the application is starting,
Scanning for root resource and provider classes in the packages:
org.kary.core
[7/17/13 14:19:07:226 SGT] 00000017 ScanningResou I Root resource classes found:
class org.kary.core.JSONService
[7/17/13 14:19:07:230 SGT] 00000017 ScanningResou I No provider classes found.
[7/17/13 14:19:07:347 SGT] 00000017 WebApplicatio I Initiating Jersey application, version Jersey: 1.8 06/24/2011
12:17 PM
Reply

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

4/14

7/27/13

Jersey hello world example

yeshwant

June 25, 2013 at 4:24 pm

Hi MKYONG & Other friends of this site:


I am using JDK 1.5. I have to use this version of JDK. Can you tell me from where to download JDK 1.5 compatible
version of JERSEY?
Reply

Ayan

May 12, 2013 at 12:36 pm

Hi MK,
It was my wife,who heard about ur site from her office-java lecturer and initially (like every husband) I ignored her
praise for ur site (u? ;-)
But for the last 1 month Im referring your site for setting intrvw qustns as well as giving intervws to top MNCs in d
world..
I must say MK, u rock like MJ (Thriller!)
;-)
Ayan
Reply

David Balme

March 27, 2013 at 9:21 am

I just wanted to say that I find your website to be very helpful.


I have come to your site many times for help with various maven issues.
Thank you for doing this.
Cheers,
David
Reply

Munish kumar

March 19, 2013 at 12:19 pm

Hi mkyoung,
I want to expose restfull services which exist in more than one package. Please suggest the required web.xml
configuration for it.
Reply

Pawan

March 7, 2013 at 8:51 am

Hi, I am not able to figure out how to deploy this app. When I try mvn clean deploy I get the error: [ERROR] Failed to
execute goal org.apache.maven.plugins:maven-deploy-plugin:2.5:deploy (default-deploy) on project parserclient:
Deployment failed: repository element was not specified in the POM inside distributionManagement element or in DaltDeploymentRepository=id::layout::url parameter -> [Help 1]
Will appreciate any hints on how to fix this one.
Thanks,
Pawan
Reply

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

5/14

7/27/13

Jersey hello world example


December 24, 2012 at 9:33 am

Corgan
Hi mkyong,

I see that your last reply is very old but I want to try ask you something abount Jersey implementation. First of all:
thanks for this example.I succeded doing it,its work except when large string is passed as parameter.Is it possible to
specify in a simple project like this some property like maxReceivedMessageSize? Whitout any specification server
return 404 bad request. Can you (or anyone)help me , please?
Reply

December 22, 2012 at 9:21 pm

Michael
Nice one Thanks for this sample

Reply

November 28, 2012 at 3:30 am

ismail hakki turan

mvn eclipse:eclipse -Dwtpversion=2.0

command must be run in projects path. Users might be type this command like

mvn archetype:generate -DgroupId=com.mkyong.rest -DartifactId=RESTfulExample -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMod

in user path.
Reply

November 28, 2012 at 3:32 am

ismail hakki turan


and thanks so much for the example.

Reply

November 26, 2012 at 7:22 pm

Luis
It works! Brilliant, as usual
Thanks,
Luis

Reply

October 13, 2012 at 5:53 am

jd

Read through the How to use mkyong tutorial, I am a newbe. I am getting the error when I run the above application
with the url http://localhost:8080/RESTfulExample/rest/hello/mkyong, Manifest error. A more verbose content of that
error follows; Any heads up appreciated.

PLATFORM VERSION INFO


Windows
Common Language Runtime
System.Deployment.dll
clr.dll

: 6.1.7601.65536 (Win32NT)
: 4.0.30319.17929
: 4.0.30319.17929 built by: FX45RTMREL
: 4.0.30319.17929 built by: FX45RTMREL

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

6/14

7/27/13

Jersey hello world example


dfdll.dll
dfshim.dll

: 4.0.30319.17929 built by: FX45RTMREL


: 4.0.41209.0 (Main.041209-0000)

Deployment url

: http://localhost:8080/RESTfulExample/rest/hello/mkyong

SOURCES

ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://localhost:8080/RESTfulExample/rest/hello/mkyong resulted in exception. Following failure messages were dete
+ Exception reading manifest from http://localhost:8080/RESTfulExample/rest/hello/mkyong: the manifest may not be valid or
+ Data at the root level is invalid. Line 1, position 1.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [10/12/2012 5:41:03 PM] : Activation of http://localhost:8080/RESTfulExample/rest/hello/mkyong has started.

ERROR DETAILS
Following errors were detected during this operation.
* [10/12/2012 5:41:03 PM] System.Deployment.Application.InvalidDeploymentException (ManifestParse)
- Exception reading manifest from http://localhost:8080/RESTfulExample/rest/hello/mkyong: the manifest may not be valid or
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sour
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass(SubscriptionStore subStore
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri&
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isSho
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
--- Inner Exception --System.Xml.XmlException
- Data at the root level is invalid. Line 1, position 1.
- Source: System.Xml
- Stack trace:
at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
at System.Deployment.Application.ManifestValidatingReader.XmlFilteredReader.Read()
at System.Xml.XmlCharCheckingReader.Read()
at System.Xml.XsdValidatingReader.Read()
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sour
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.

--------

Reply

LL

October 25, 2012 at 10:26 pm

I have exactly same issue. Any suggestion on this?


Reply

LL

October 25, 2012 at 11:26 pm

Solve this issue: by adding @Produces

package com.mkyong.rest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
@Path(&quot;/hello&quot;)
public class HelloWorldService {

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

7/14

7/27/13

Jersey hello world example


@GET
@Path(&quot;/{param}&quot;)
@Produces(MediaType.TEXT_PLAIN)
public Response getMsg(@PathParam(&quot;param&quot;) String msg) {
String output = &quot;Jersey say : &quot; + msg;
return Response.status(200).entity(output).build();
}
}

Reply

anon

November 8, 2012 at 12:12 am

adding @Produces worked for me too.


Reply

October 12, 2012 at 4:19 pm

Joe-Z
Im sorry, but this example is absolutely useless.

I mean, yes you could probably copy all the sources in files and get it wo work. But to me the point of a helloworldexample is getting useres to understand what they are doing and not just what cody to copy in what files (a bit of a
teach a man to fish-thing). From this perspective this introduction really lacks some fundamental explaining of the
used components (e.g.: why do i need the web.xml-file? what do the parameters in pom.xml mean? what could be
wrong if Im still getting a 404?)
I still appreciate that you want to give something back to the community. Only when you do that, do it right.
Reply

Joe-Z

October 12, 2012 at 4:21 pm

code* (not cody)


Reply

September 11, 2012 at 3:40 am

franjo
Doesnt work man, 404 error. Any hint?

Reply

thurman

February 27, 2013 at 11:56 pm

I had this problem as well and it was related to how to deploy this app to your tomcat server.
My problem was fixed by adding a lib folder to the WEB-INF directory.
Then I copied three jar files into the lib folder:
asm-3.1
jersey-core-1.8
jersey-server-1.8
I got these jars from my local .m2 folder after I used maven to bring them down for Jersey.
Im assuming that you can use google to find them directly, download them, then place them in this folder.
Remember this lib folder is in the {tomcat-home}/webapps/your-app-folder/web-inf folder.
Another thing that mite seem obvious except for new Tomcat users is that you also have to include a
classes folder that contains your class files. This folder is located at
tomcat-home}/webapps/your-app-folder/web-inf/classes.
After I added these this demo worked fine.

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

8/14

7/27/13

Jersey hello world example


One way to really know that youre on the right track is that after you start Tomcat you should see
messages in the console indicating that the Jersey application is being initiated.
Thurman
Reply

Ramana Reddy

September 6, 2012 at 7:10 pm

Hi Mkyong
I am a great fan of you. Your examples are too good. I use lot of your examples while teaching JSF, Struts, Jax-ws,
Jax-rs and all other technologies. You are a great help. Thank you for your service
. Ramana
Reply

Priyanka

September 2, 2012 at 11:26 pm

Thanks MKYONG
Highly appreciate your this effort
very useful for beginners like us
go aheadgood luck!!!
Reply

Vince

August 29, 2012 at 11:50 am

4.0.0
com.foo.fcm
server
war
1.0-SNAPSHOT
server Maven Webapp
http://maven.apache.org
junit
junit
3.8.1
test
com.sun.jersey
jersey-server
1.8
maven2-repository.java.net
Java.net Repository for Maven
http://download.java.net/maven/2/
default
server
[INFO]
[ERROR] BUILD ERROR
[INFO]
[INFO] Error building POM (may not be this projects POM).
Project ID: null:jersey-server:bundle:null
Reason: Cannot find parent: com.sun.jersey:jersey-project for project: null:jersey-server:bundle:null for project
null:jersey-server:bundle:null
Reply

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

9/14

7/27/13

Jersey hello world example


August 5, 2012 at 5:58 pm

s3rcl
Thanks,
I have gone through couple of Jersey tutorials,
but I have to admit that this is the best one.
Thanks again Mr. Yong

Reply

August 1, 2012 at 6:14 am

vas
Thanks
Does the above example can be deployed on JBoss server and works?

I have created JAXRS webservices using HTTPDispatcherServlet. what is the diff between ServletContainer &
HTTPDispatcherServlet? JAX RS webservices servlet entry in web.xml vary based on application server?
Reply

Lin Yang

July 28, 2012 at 2:38 pm

why I run into WARNING: EXCEPTION


java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer error in eclipse even
though I added all jersey ans jaxb related jars under war/WEB-INF/lib and Project Properties / Libraries?
Reply

Lin Yang

July 28, 2012 at 2:37 pm

why I run into WARNING: EXCEPTION


java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer error in eclipse even
though I added all jersey and jaxb related jars under GAE war/WEB-INF/lib and Project Properties / Libraries?
Reply

marsChen

September 4, 2012 at 9:57 pm

if you use jersey1.13 version,you should add dependency


com.sun.jersey
jersey-bundle
1.13
in pom.xml?Or add jersey-bundle-1.13.jar in the/WEB-INF/lib
Reply

Pal Ram

July 28, 2012 at 1:00 pm

Hello Mr.Yong,
In recent days, I happen to get perfect answers from your site for most of my Google searches. This is just one of
them! So I want to thank you for everything.
Thank you so much for providing such a great help.
Regards,
Ram.
Reply

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

10/14

7/27/13

Jersey hello world example

mkyong

July 28, 2012 at 1:08 pm

Welcome, good to know it help :) keep in touch.


Reply

babak

July 26, 2012 at 12:04 am

hello and thanks for your articles.


a question: when I search for Jersey-Server in Maven Central Repo I get the latest version number of 1.3
http://search.maven.org/#search|ga|1|a%3A%22jersey-server%22
but in your example you are using 1.8? I am confused, could you please explain this a little bit.
Thanks.
Reply

jaya

July 12, 2012 at 5:21 am

Please let me know the procedure to test this.


Im getting HTTP Status 404 error
Reply

Chandra

July 10, 2012 at 3:30 pm

Great Work!!! and Thanks from heart


Reply

Alejandro

July 4, 2012 at 7:08 am

THANK YOU SO MUCH!!! First step-by-step to get this done in less than 5 minutes!!! Thanks I tried a different site
but it seems that the repository was missing. Thanks
Reply

ranjit

June 20, 2012 at 11:14 pm

Can you provide us a valuable example for creating a RESTFUL web service using Eclipse and Tomcat. I dont want
to use third party tool like jersey that needs license as I dont want to pay annual fees.
Reply

Henrik

June 14, 2012 at 8:26 pm

Thank you so much, you made my day!


I could apply this for an endpoint in Mule-ESB (2.28). However I had a small problem, I got a class not found
exception for import com.sun.jersey.spi.service.ComponentProvider.
However, in the pom, I changed the dependency to the following:
com.sun.jersey.contribs
jersey-simple-server
1.12

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

11/14

7/27/13

Jersey hello world example

and it works nicely. Cheers mate


Reply

vishwanath

June 11, 2012 at 5:53 pm

i have compiled and successfully installed the project but when i try to run it using mvn tomcat:run it doesnt open any
server and just ends .
Reply

Lila Devi

March 17, 2012 at 12:50 am

Hi,
How can I use ant to build Jax-rs. Is it a simple war file or is there some wsgen tasks that I have to run as with Jax-ws.
Please could you provide me with a sample as I do not want to start using Maven just now.
Thanks
Reply

verygood

January 13, 2012 at 12:24 am

Im not sure what we could do without you. your tutorials are just perfect. I have never seen anyone on the web who
has written such a good and perfect tutorial.
keep up the good work.
Reply

December 18, 2011 at 12:08 am

Took a while to get this to work. I noticed along the way that the latest Jersey release does not work like this, the
servlet moved. Another great tutorial though, thank you.
Reply

September 25, 2011 at 10:43 pm

M.A.

Hello and thank you for this tutorial. I havent started it yet, because Im not sure if Maven is required and I dont want
to learn it now. So, will I be able to complete this tutorial without using Maven? All I want is to create a web service
(rest + json).
Waiting for your reply. Thank you in advance.
Reply

mkyong

September 26, 2011 at 7:55 am

In this tutorial, Maven is nothing but a build tool, you can get all the dependencies manually and build it
manually or via Ant.
Reply

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

12/14

7/27/13

Jersey hello world example


July 20, 2011 at 1:30 pm

Rahi Akela

Thanks Mr. Yong,


For your valuable WS-RS tutorials.I had been hunting such a nice WS-RS example since a long time.So thanks a lot.
Reply

July 21, 2011 at 9:48 am

mkyong
your comment is motivated :)

Reply

July 19, 2011 at 1:23 am

Kyle
Just so you know, your site is blocking its own images Hotlinking detected

Reply

July 19, 2011 at 8:45 am

mkyong
Hi, could you explains it in detail? How to simulate it?

Reply

Corgan

December 19, 2012 at 12:33 am

Hi mkyong,
I see that last reply is very old but I want to try ask you something abount Jersey
implementation. Is it possible to specify in a simple project like this some property like
maxReceivedMessageSize? I realized a simple project but with large data passed in input ,
server return 404 bad request. Can you help me , please?
Reply

Corgan

March 7, 2013 at 5:45 pm

Hi mkyong,
If param is a string too long I receive a server exception. For example if I read a
String from a file and send it with the service and file is too big
Reply

What is your opinion?


Your email address will not be published. Required fields are marked *
Name *
Email *
Website
Comment

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

13/14

7/27/13

Jersey hello world example

Note
To post source code in comment, uses <pre lang="java"> source code </pre>

Post Comment
Notify me of followup comments via e-mail

WCF Test Client: WCFStorm $2.95 - Java/JSP Hosting

Recruitment Canada

www.wcfstorm.com
www.MochaHost.com
WCF Functional & Load Testing tool JSP/Java, Servlet Hosting $2.95/mo.
Also works with Web Services!
Tomcat, Sruts, PHP 5, My SQL 5

jobrapido.com/recruitment+can
www.Qwords.com
5 urgent open positions. Apply now! Redundant Cloud Storage Mulai
Recruitment Canada
Rp.300 / hari

Web Hosting Jakarta

All Available Tutorials

Favorites Links

Friends & Links

About Us

Java Core Technologies :

Android Developer

Java Code Geeks

Java I/O, Java RegEx, Java XML, Java JSON, JDBC,

Google App Engine using Java

PHP Tutorials

Java Misc

DZone - Fresh Links

TenthOfMarch

J2EE Frameworks :

Official Java EE 5 Tutorial

Web Security Blog

Mkyong.com is a weblog dedicated to Java/J2EE


developers and Web Developers. We constantly
publish useful tricks, tutorials on J2EE or web
development.

Hibernate, JSF 2.0, Spring Core, Spring MVC,

Official Java EE 6 Tutorial

Web Development

Spring Security, Apache Wicket, Struts 1.x, Struts


2.x
Web Service :
JAX-WS (SOAP), JAX-RS (REST)
Build Tools :
Maven, Archiva
Unit Test Frameworks :
jUnit, TestNG
Others :

Spring 2.5.x documentation


Spring 3.1.x documentation

All examples are simple, easy to read, and full


source code available, and of course well tested in
our development environment.

Hibernate core documentation


Java SE 6.0 API documentation
Java EE 6.0 API documentation
Java Secure Socket Extension
(JSSE) Reference Guide
JSP home page

Android, Google App Engine, jQuery, Java

JSF home page

MongoDB, Quartz Scheduler

Eclipse IDE for Java developer

We're Social
1. Twitter - Follow Me
2. Facebook - Like Me
3. Google Plus - Add Me
4. RSS - Subscribe Me

Struts 1.3 documentation


Struts 2.2 documentation
Maven home page
Maven central repository Search
Java.Net Maven repository
Ant home page
JAX-WS Official Website
JAX-RS Official Website (Jersey)
MongoDB Official Website

Copyright 2008-2013 Mkyong.com, all rights reserved. Web Hosting Powered by Liquid Web

www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/

14/14

You might also like