Я разрабатываю веб-сервис, используя WSDL (контракт-первый), который определяет одно из его полей как десятичный тип, который JAXB преобразует в BigDecimal при генерации клиентского кода.
Пока все хорошо.Но когда я тестирую с помощью SoapUI, если я отправляю недопустимую строку для этого поля (например, «xxxx»), я получаю нулевой BigDecimal на стороне сервера.Работает нормально, если я отправлю правильное числовое значение.
Я не могу сказать, что это поведение не имеет смысла для меня.API может получать NumberFormatException, возможно, из конструктора BigDecimal, и просто отправлять нулевое значение, чтобы избежать создания исключения до того, как он достигнет серверной стороны.
Но прежде чем закрыть эту проблему, я хотел бы подтвердить этоповедение или выучить какое-нибудь «исправление», которое позволит мне самостоятельно справиться с возможной ошибкой преобразования.Пока что я не нашел никаких документов по этому сценарию.Кроме того, я не смог найти ничего подозрительного в отладке API.
Не могли бы вы помочь мне с некоторыми направлениями?Возможно, изменить это поведение или подтвердить его.
Заранее спасибо.