JPA JAXRS JSON Ошибка десериализации привязки - PullRequest
0 голосов
/ 21 ноября 2018

У меня небольшая проблема с десериализацией строки JSON поверх REST.Моя проблема в том, что я всегда получаю «ошибку десериализации JSON Binding» обратно.Строка JSON при вызове с Chrome будет отображаться так, как я хочу.Но когда я хочу вызвать метод, я получаю сообщение об ошибке.

Метод Get-REST

public void getFilm(int id) throws IOException {
    Client client = ClientBuilder.newClient();
    WebTarget webTarget = client.target("http://localhost:8080/sprint-3- 
    gruppe-1/api/actors/1");

    Invocation.Builder invocationBuilder 
      = webTarget.request(MediaType.APPLICATION_JSON);

    Response response = invocationBuilder.get();

    ActorDTO temp = response.readEntity(ActorDTO.class);
}

RestAPI

@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("/{id}")
public Response httpGetActor(@PathParam("id") int id) {
    Actor temp = actorService.read(id);
    if(temp == null)  {
        return Response.ok().entity("404 NOT FOUND").build();
    } else {
        return Response.ok().entity(new ActorDTO(temp)).build();
    }
}

ActorDTO

public class ActorDTO {
private int actorId;
private String firstName;
private String lastName;    
private Date lastUpdate;

private ActorDTO() {

}

public ActorDTO(Actor actor) {
    this.actorId = actor.getActorId();
    this.firstName = actor.getFirstName();
    this.lastName = actor.getLastName();
    this.lastUpdate = actor.getLastUpdate();
}
//getter & setters

1 Ответ

0 голосов
/ 22 ноября 2018

Я исправил свою проблему.Как кажется, у Wildfly 14 есть проблема с "resteasy-json-binding-provider-3.6.1.Final.jar".Чтобы решить эту проблему, вы должны игнорировать ее при загрузке.

Вот решение этой проблемы: https://developer.jboss.org/thread/278678

...