Olá! Estou desenvolvendo uma aplicação com spring boot onde deixo uma porta de um socket (não é websocket é socket mesmo) em listening quando envio via postman uma requisição e um json no corpo do programa e tento fazer o parser utilizando Gson para meu objeto java como mostra o código da um erro:
BufferedReader buffer = new BufferedReader(new InputStreamReader(input));
ClientRequest clientRequest = gson.fromJson(buffer, ClientRequest.class);
System.out.println(clientRequest.getAction() + ", " + clientRequest.getCardnumber() + ", " + clientRequest.getAmount());
o erro que mostra é o seguinte:
Exception in thread "pool-5-thread-1" Exception in thread "pool-5-thread-2" java.lang.NullPointerException
at br.com.cartaoprepago.server.WorkerRunnable.Requicao(WorkerRunnable.java:63)
at br.com.cartaoprepago.server.WorkerRunnable.run(WorkerRunnable.java:38)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:226)
at com.google.gson.Gson.fromJson(Gson.java:927)
at com.google.gson.Gson.fromJson(Gson.java:865)
at br.com.cartaoprepago.server.WorkerRunnable.Requicao(WorkerRunnable.java:62)
at br.com.cartaoprepago.server.WorkerRunnable.run(WorkerRunnable.java:38)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:385)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:215)
Imagino que ele não entenda que é um json por conta do cabeçario http, mas eu não sei como ignorar o cabeçario.
alguem poderia me auxiliar???????