Skip to content

Latest commit

 

History

History
 
 

cdi-webapp

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Jersey CDI Integration CDI Beans WebApp Example

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

Contents

The mapping of the URI path space is presented in the following table:

URI path Description Expected Results
/cdi-webapp/helloworld A managed bean with no use of injection whatsoever Hello World
/cdi-webapp/singleton Shows injection of context objects into the fields of a managed bean. OK GET /cdi-webapp/singleton
/cdi-webapp/singleton/counter Shows injection of context objects into the fields of a managed bean. standalone Grizzly (no resource injection support) - 0 initial increment value, that gets incremented with each other request
    Java EE compliant AS - 42 initial increment value
/cdi-webapp/other/C/D Shows injection of context objects and path parameters into the fields of a managed bean. INTERCEPTED: OK GET /cdi-webapp/other, c=C, d=D
/cdi-webapp/echofield/b?a=a Shows injection of path and query parameters into the fields of a managed bean. ECHO a b
/cdi-webapp/echo/a A managed bean that uses (but does not inject) a path parameter. ECHO a

Running the Example

This example should work on any Java EE 7 compliant application server. It has been tested on a standalone GlassFish 4 instance. The easiest way to get the application running there is to build it and deploy as follows:

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

Another option, introduced in Jersey 2.15, is to run this example in Grizzly HTTP server. To get the application running there you just invoke the following command:

mvn clean compile exec:java

Since Weld Servlet support is provided also for Apache Tomcat server, there is yet another way how to deploy the application. Use the tomcat-packaging maven profile to get the WAR archive packaged in a way that makes it ready for Tomcat 7+ deployment:

mvn -Ptomcat-packaging clean package
cp target/cdi-webapp.war $CATALINA_HOME/webapps

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