I decided to catch any Exception (Other implementations of the factory might not throw an IllegalArgumentException) and rethrow them within a JSONException.