Reputation: 5239
I want to parse the values from the JSON-Post into Java-Variables. But they are always empty!
JSON-Post:
{"algID":0,"vertices":[1,2,3]}
My try to parse it into Java-Variables:
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Path("getCloseness_vertices")
public String getCloseness_vertices(
@FormParam("algID") int algID,
@FormParam("vertices") IntArray vertices)
If i try it like this:
public String getCloseness_vertices(int algID)
Tomcat says:
A message body reader for Java class int, and Java type int, and MIME media type application/json; charset=UTF-8 was not found.
Any help would be nice, I just don't get it.
Upvotes: 2
Views: 8223
Reputation: 76918
You need to create a POJO that Jersey can serialize the JSON to:
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class MyPojo {
public int algID;
public int[] verticies;
public MyPojo() {} // constructor is required
}
Then ...
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Path("getCloseness_vertices")
public String getCloseness_vertices(MyPojo p)
{
int i = p.algID;
}
Also you need to include the jersey-json jar file.
Upvotes: 7