import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("example")
public class ExampleResource {
@GET
@Path("json")
@Produces(MediaType.APPLICATION_JSON)
public ExampleObject getJson() {
ExampleObject obj = new ExampleObject();
obj.setName("John");
obj.setAge(25);
return obj;
}
}
public class ExampleObject {
@JsonProperty("name")
private String name;
@JsonProperty("age")
private int age;
}
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;
@Path("example")
public class ExampleResource {
@POST
@Path("json")
@Consumes(MediaType.APPLICATION_JSON)
public void postJson(ExampleObject obj) {
// ...
}
}
public class ExampleObject {
@JsonProperty("name")
private String name;
@JsonProperty("age")
private int age;
}
<servlet>
<servlet-name>JerseyServlet</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.example.resources</param-value>
</init-param>
<init-param>
<param-name>jersey.config.server.provider.classnames</param-name>
<param-value>org.glassfish.jersey.jackson.JacksonFeature</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JerseyServlet</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>