Jersey CDI Example

This example demonstrates how to develop RESTful web service with CDI managed beans and a Servlet 3.0 Web container.

Running the Example

This example currently works only with a standalone GlassFish 4 instance. The easiest way to get the application running is to build it and deploy as follows:

mvn clean package
$AS_HOME/asadmin deploy target/cdi-webapp.war

After you successfully deploy the application, visit the following URLs:

Description URL Expected Results
A managed bean with no use of injection whatsoever http://localhost:8080/cdi-webapp/helloworld Hello World
Shows injection of context objects into the fields of a managed bean. http://localhost:8080/cdi-webapp/singleton OK GET http://localhost:8080/cdi-webapp/singleton
Shows injection of context objects into the fields of a managed bean. http://localhost:8080/cdi-webapp/singleton/counter 42 (initial value, which gets incremented with each request)
Shows injection of context objects and path parameters into the fields of a managed bean. http://localhost:8080/cdi-webapp/other/C/D OK GET http://localhost:8080/cdi-webapp/other, c=C, d=D
Shows injection of path and query parameters into the fields of a managed bean. http://localhost:8080/cdi-webapp/echofield/b?a=a ECHO a b
A managed bean that uses (but does not inject) a path parameter. http://localhost:8080/cdi-webapp/echo/a ECHO a