javaspringvariablespathhttpexception

Get path variable out of HttpMessageNotReadable exception


We have some web services which are being consumed by mobile clients , in which the mobile clients make some request's and we return response to them. Somehow if the client make any invalid request we throw Custom Exceptions .
But recently the mobile client has made some request which was out of range for Long variable.
The client has different variables for ex ::

    {
      "accountId":"343"
      "Amount":"90909090909090909090"
    }

In case of the value for accountId or Amount are made more than 19 digits we get HttpMessageNotReadable exception as the range is out of long value. But from exception i am not able to fetch for which variable the exception has been raised whether for accountId or Amount. From the exception i am getting this information in _path variable but i am not able to fetch it. enter image description here

And in the path variable i get something like::

[com.Upload["AccountInfo"], com.Info["Account"]]

Does somebody know how to fetch this information.


Solution

  • The following code prints out the field which causes the exception.

    InvalidFormatException invalidFormatException = (InvalidFormatException) exception
            .getCause();
    System.out.println(invalidFormatException.getPath().get(0)
            .getFieldName());