Please review that pull request. In general, abily to change context class it is common practice in Spring Web. There are at least 3 cases where the non default context class is needed:
Portals env (using XmlPortletApplicationContext as context class)
Full OSGI support (ability to use OSGI config Admin and other OSGI specific features)
App server specific contexts, for example for custom class weaving of resources lookup.
Can be usefull in environments with non standart context configuration, e.g. OSGI. Implementation as in standart Spring Context Listener.