This example demonstrates injection of various runtime information into Jersey/JAX-RS resources.
A simple application consists of two simple resources: One is a typical JAX-RS @Path
annotated resource. The second resource is created programmatically using the new Jeresy 2 programmatic resource binding API. Both resources inject the same information and produce the report that is returned in the response back to the client.
The JAX-RS @Path
annotated web resource is implemented by the
org.glassfish.jersey.examples.jaxrstypeinjection.JaxrsInjectionReportingResource
class. The programmatic resource is implemented by the
org.glassfish.jersey.examples.jaxrstypeinjection.JaxrsInjectionReportingInflector
class.
The mapping of the URI path space is presented in the following table:
URI path | Resource class | HTTP methods |
---|---|---|
/annotated/instance/{p1}/{p2}?q1=<int_value>&q2=<string_value>&q2=<string_value> | JaxrsInjectionReportingResource | GET |
/annotated/method/{p1}/{p2}?q1=<int_value>&q2=<string_value>&q2=<string_value> | JaxrsInjectionReportingResource | GET |
/programmatic/{p1}/{p2}?q1=<int_value>&q2=<string_value>&q2=<string_value> | JaxrsInjectionReportingInflector | GET |
Please note that the value of the q1
URI query parameter is expected
Run the example as follows:
mvn clean compile exec:java
This deploys the JAX-RS Types Injection Example using Grizzly
A WADL description may be accessed at the URL:
The resources could be accessed via