json - Why does response.readEntity(Post.class) return null? -


i'm trying json data rest resource , automatically convert java object json-to-java binding. use jersey framework 2.21 jersey-media-moxy module json provider in client application .

i cannot figure out why null instead of proper post object when this:

client client = clientbuilder.newclient(); webtarget webtarget = client.target("http://www.travelportland.com/wp-json"); response response = webtarget.path("posts/9").request().get(); post post = response.readentity(post.class);     // => null 

the post class implementation looks (at point want take 'title' field json):

@xmlrootelement public class post {     private string title;      public string gettitle() {         return title;     }      public void settitle(string title) {         this.title = title;     } } 

all works fine when try string:

string poststr = response.readentity(string.class); 

or if try other resource:

webtarget webtarget = client.target("http://jsonplaceholder.typicode.com"); response response = webtarget.path("posts/9").request().get(); post post = response.readentity(post.class);     // => com.example.post@74e28667 

it seems issue somehow related structure or size of json data. how can solve problem?

seems issue moxy. not sure (maybe size, bad chars, don't know). tested jackson, , works fine. might want make switch jackson if can't figure out moxy.

<dependency>     <groupid>org.glassfish.jersey.media</groupid>     <artifactid>jersey-media-json-jackson</artifactid>     <version>${jersey2.version}</version> </dependency> 

you need set class annotation ignore unknown properties if not model keys json

@xmlrootelement @jsonignoreproperties(ignoreunknown = true) public class post { 

jackson recognize jaxb annotations if using bunch of them.

also make sure rid of the moxy dependency of have explicitly register jacksonfeature.class client, disable moxy provider.


Comments

Popular posts from this blog

mysql - FireDac error 314 - but DLLs are in program directory -

git - How to list all releases of public repository with GitHub API V3 -

c++ - Getting C2512 "no default constructor" for `ClassA` error on the first parentheses of constructor for `ClassB`? -