After you migrate to SAS® 9.4M9 (TS1M9), REST API calls to the Decision Services endpoint fail with HTTP 400 errors:
curl -v -X POST "http://servername:7980/RTDM/rest/runtime/decisions/Event%20Definition(1)" \
-H "Content-Type: application/vnd.sas.decision.request+json" \
--data-binary @payload.json \
-o respuesta1.json
This error comes from DecisionInputJSONHttpMessageConverter.readInternal(), where an instance of ServletServerHttpRequest fails.
This issue is caused by the following migration changes:
Specifically, the migration fails because spring 6 introduced a new decorator pattern where HttpInputMessage objects are wrapped in EmptyBodyCheckingHttpInputMessage before being passed to message converters.
This wrapper does as follows: