Currently if the resource resolver factory is restarted (e.g. because the
configuration has been changed) all resource resolvers which were being
requested beforehand become almost useless, because they have no longer any
providers being bound! This means those resolvers can only be used to retrieve
the entry points below “/“ but nothing beyond that.
Therefore if you forget to refresh a resource resolver after the resource
resolver factory has been restarted you get very weird results. One example of
this behaviour is being described in
https://issues.apache.org/jira/browse/SLING-5023.
What about marking those resource resolvers as invalid (because they do no
longer have the required resource providers being bound) and let all methods
being called on those resource resolvers fail with an IllegalStateException?
That way those kind of programming mistakes would be more obvious!
Thanks for your opinions on that.
Konrad