MessageRestService.java
Reference link 1, link 2, link 3
package com.jeetu.rest;
import com.google.gson.Gson;
import org.json.JSONException;
import org.json.JSONObject;
import javax.ws.rs.*;
import javax.ws.rs.core.Response;
import java.util.LinkedHashMap;
import java.util.Map;
@Path("/message")
public class MessageRestService {
@POST
@Path("/sendParams")
@Consumes("application/json")
public Response consumeJSONParams( Map student ) {
/*
POST-MAN
http://jbosseap.jeetualex.info/rest/message/sendParams
Body raw = {"id":"12","firstName":"Catain","lastName":"Hook","age":"10", "params":{"a": 1, "b": 2}}
Content-Type = application/json
*/
LinkedHashMap params = null;
String id = "";
id = (String) student.get("id");
params = (LinkedHashMap) student.get("params");
return Response.status(200).entity(params.toString()).build();
}
@POST
@Path("/sendMapper")
@Consumes("application/json")
public Response consumeJSONMapper( String student ) {
/*
POST-MAN
http://jbosseap.jeetualex.info/rest/message/sendMapper
Body raw = {"id":"12","firstName":"Catain","lastName":"Hook","age":"10", "params":{"a": 1, "b": 2}}
Content-Type = application/json
*/
JSONObject output = null;
JSONObject params = null;
String id = "";
try {
output = new JSONObject(student);
id = (String) output.get("id");
params = output.getJSONObject("params");
} catch (JSONException e) {
e.printStackTrace();
}
//return Response.status(200).entity(output.toString()).build();
//return Response.status(200).entity(id).build();
return Response.status(200).entity(params.toString()).build();
}
@POST
@Path("/sendRequest")
@Consumes("application/json")
public Response consumeJSONRequest( String student ) {
/*
POST-MAN
http://jbosseap.jeetualex.info/rest/message/sendRequest
Body raw = {"id":"12","firstName":"Catain","lastName":"Hook","age":"10"}
Content-Type = application/json
*/
Gson gson = new Gson();
Student output = gson.fromJson(student, Student.class);
return Response.status(200).entity(gson.toJson(output)).build();
}
@POST
@Path("/sendString")
@Consumes("application/json")
public Response consumeJSONString( String student ) {
/*
POST-MAN
http://jbosseap.jeetualex.info/rest/message/sendString
Body raw = {"id":"12","firstName":"Catain","lastName":"Hook","age":"10"}
Content-Type = application/json
*/
Gson gson = new Gson();
Student output = gson.fromJson(student, Student.class);
return Response.status(200).entity(output).build();
}
@POST
@Path("/send")
@Consumes("application/json")
public Response consumeJSON( Student student ) {
/*
POST-MAN
http://jbosseap.jeetualex.info/rest/message/send
Body raw = {"id":"12","firstName":"Catain","lastName":"Hook","age":"10"}
Content-Type = application/json
*/
String output = student.toString();
return Response.status(200).entity(output).build();
}
@GET
@Path("/print/{name}")
@Produces("application/json")
public Student produceJSON( @PathParam("name") String name ) {
/*
http://jbosseap.jeetualex.info/rest/message/print/James
*/
Student st = new Student(name, "Marco",19,12);
return st;
}
@GET
@Path("/{param}")
public Response printMessage(@PathParam("param") String msg) {
/*
http://jbosseap.jeetualex.info/rest/message/jeetu
*/
String result = "Restful example : " + msg;
return Response.status(200).entity(result).build();
}
}
Student.java
package com.jeetu.rest;
public class Student {
private int id;
private String firstName;
private String lastName;
private int age;
// Must have no-argument constructor
public Student() {
}
public Student(String fname, String lname, int age, int id) {
this.firstName = fname;
this.lastName = lname;
this.age = age;
this.id = id;
}
public void setFirstName(String fname) {
this.firstName = fname;
}
public String getFirstName() {
return this.firstName;
}
public void setLastName(String lname) {
this.lastName = lname;
}
public String getLastName() {
return this.lastName;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return this.age;
}
public void setId(int id) {
this.id = id;
}
public int getId() {
return this.id;
}
@Override
public String toString() {
return new StringBuffer(" First Name : ").append(this.firstName)
.append(" Last Name : ").append(this.lastName)
.append(" Age : ").append(this.age).append(" ID : ")
.append(this.id).toString();
}
}
pom.xml
dependency\>
groupid>org.jboss.resteasy/groupid>
artifactid>resteasy-jaxrs/artifactid>
version>2.2.1.GA/version>
/dependency>
dependency>
groupid>org.jboss.resteasy/groupid>
artifactid>resteasy-jackson-provider/artifactid>
version>3.0.4.Final/version>
/dependency>
Web.xml
!--rest easy !!!-->
!-- Auto scan REST service -->
context-param>
param-name>resteasy.scan/param-name>
param-value>true/param-value>
/context-param>
!-- this need same with resteasy servlet url-pattern -->
context-param>
param-name>resteasy.servlet.mapping.prefix/param-name>
param-value>/rest/param-value>
/context-param>
listener>
listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
/listener-class>
/listener>
servlet>
servlet-name>resteasy-servlet
servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
/servlet-class>
/servlet>
servlet-mapping>
servlet-name>resteasy-servlet/servlet-name>
url-pattern>/rest/*/url-pattern>
/servlet-mapping>
!--rest easy !!!-->
Reference link 1, link 2, link 3
2 comments :
Ace4sure is the website that deals in preparation material for the exam for many years. According to my exposure and research, this is the right platform where you can get exact 70-767 Dumps.
I was very pleased to find this web-site. I wanted to thanks for your time for this wonderful read!! I definitely enjoying every little bit of it and I have you bookmarked to check out new stuff you blog post.
black friday hot tub deals
Post a Comment