Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @XmlRootElement(name = "user")
- public class User {
- private Set<Role> roleSet;
- // other fields omitted
- @XmlElementWrapper(name = "roles")
- @XmlElement(name = "role")
- public Set<Role> getRoleSet() { /* compiled code */ }
- // all other getters with simple JAXB annotations @XmlElement omitted
- }
- @XmlRootElement(name = "role")
- public class ClientRole {
- private String name;
- private boolean active;
- private String id;
- @XmlElement(name = "name")
- public String getName() { /* compiled code */ }
- // all getters with JAXB annotations
- }
- HttpAuthenticationFeature authenticationFeature = HttpAuthenticationFeature.basic("freddy", "qwerty");
- Client client = ClientBuilder
- .newClient()
- .register(authenticationFeature)
- .register(JacksonFeature.class);
- WebTarget target = client.target("http://localhost:4444/server/");
- Response resp = target
- .path("/api/users/freddy")
- .request()
- .accept(MediaType.APPLICATION_JSON)
- .get();
- User entity = resp.readEntity(User.class);
- System.out.println(entity);
- Exception in thread "main" javax.ws.rs.ProcessingException: Error reading entity from input stream.
- at org.glassfish.jersey.message.internal.InboundMessageContext.readEntity(InboundMessageContext.java:866)
- at org.glassfish.jersey.message.internal.InboundMessageContext.readEntity(InboundMessageContext.java:783)
- at org.glassfish.jersey.client.ClientResponse.readEntity(ClientResponse.java:326)
- at org.glassfish.jersey.client.InboundJaxrsResponse$1.call(InboundJaxrsResponse.java:111)
- at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
- at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
- at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
- at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:399)
- at org.glassfish.jersey.client.InboundJaxrsResponse.readEntity(InboundJaxrsResponse.java:108)
- at com.test.CreateUserExample.main(CreateUserExample.java:36)
- Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "roles" (class com.server.dto.auth.User), not marked as ignorable (6 known properties: "enabled", "statusId", "role", "username", "emailAddress", "password"])
- at [Source: org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$UnCloseableInputStream@34cdeda2; line: 1, column: 141] (through reference chain: com.server.dto.auth.User["roles"])
- at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:51)
- at com.fasterxml.jackson.databind.DeserializationContext.reportUnknownProperty(DeserializationContext.java:671)
- at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:771)
- at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1297)
- at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1275)
- at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:247)
- at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:118)
- at com.fasterxml.jackson.databind.ObjectReader._bind(ObjectReader.java:1233)
- at com.fasterxml.jackson.databind.ObjectReader.readValue(ObjectReader.java:677)
- at com.fasterxml.jackson.jaxrs.base.ProviderBase.readFrom(ProviderBase.java:777)
- at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$TerminalReaderInterceptor.invokeReadFrom(ReaderInterceptorExecutor.java:264)
- at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$TerminalReaderInterceptor.aroundReadFrom(ReaderInterceptorExecutor.java:234)
- at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor.proceed(ReaderInterceptorExecutor.java:154)
- at org.glassfish.jersey.message.internal.MessageBodyFactory.readFrom(MessageBodyFactory.java:1124)
- at org.glassfish.jersey.message.internal.InboundMessageContext.readEntity(InboundMessageContext.java:851)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement