1

Ich habe einen Frühling Websocket Stomp-Controller, die Nachrichten verarbeitet SEND (ähnlich wie https://spring.io/guides/gs/messaging-stomp-websocket/):Websocket STOMP (oder REST) ​​-Controller im Frühjahr: Erfassungs-Deserialisierungsfehler?

@MessageMapping("/pong") 
public void handlePong(IncomingModel model) {...} 

Es funktioniert gut, wenn mein IncomingModel kann deserialisiert hinter den Kulissen richtig sein.

Wenn es jedoch nicht der Fall ist, erhalte ich so etwas wie

2017-02-21 11:24:31.935 ERROR 12536 --- [nboundChannel-3] .WebSocketAnnotationMethodMessageHandler : 
Unhandled exception from message handler method 
org.springframework.messaging.converter.MessageConversionException: 
Could not read JSON: Can not deserialize value of type java.lang.Long from String "2017-02-21T09:24:31.917Z": not a valid Long value 

Wie ich diesen Fehler in meinem Code erfassen und damit umgehen? Ich nehme an, der Fall ist der gleiche wie bei REST-Controllern.

+0

Zeigen Sie Ihre JSON? – shazin

+0

Es ist ein einfacher Json, wo Zeichenfolge anstelle von lange gesendet wird. –

Antwort

1

Sie können die @MessageExceptionHandler(MessageConversionException.class) Annotation auf die Methode MessageConversionException anwenden. Oder Anmerkung @MessageExceptionHandler() ohne Parameter, um irgendeine Ausnahme zu behandeln.

Verwandte Themen