Checking some code on myfaces I notice this lines on FacesConfigurator:
if(application instanceof ApplicationImpl)
for (Iterator it = _dispenser.getConverterConfigurationByClassName(); it.hasNext()
We should avoid that, and instead use RuntimeConfig object, because that is the right place to do that.
The problem with this hack is what happen when Application object is wrapped. It is very rare that someone overrides this class, but on JSF 2.0 this problem become important, because it is valid to wrap Application object.
The solution is just move the related code to RuntimeConfig object and call from ApplicationImpl doing a lookup to that location.