Handle optional fields with null JSON value gracefully
This PR handles correctly JSON null values for optional fields in ExternalAccountCredentials configuration.
This is likely a partial fix, other credential classes have the same issue (just search for (String) json.get( in the codebase).
The approach might applied to all json fields, including required ones, to avoid ClassCastException and have better errors.
Fixes #1705 ☕️
For the PR, can you update title to use convention commits? I think can just add a fix: ... prefix to the title.
Also, I think the linter CI is failing. Can you run mvn fmt:format on this change?
Adding @aeitzman for review on 3pi code.
Adding a different reviewer as there have been some changes.