I tried updating an existing application to MyFaces 2.2.0 (from 2.1.11) by simply replacing the library. When I try to deploy the app, I get a StackOverflowError (below). Looking at the source code I'm surprised this doesn't always happen. Several methods (setFlowHandler, getFlowHandler, unsubscribeFromEvent, etc.) all follow the same structure where they call getMyFacesApplicationInstance and then call same method on the instance from that method. This seems to require an extending class to exist and that the extending class completely overrides the methods in question without calling the superclass method. Am I missing something here? More importantly, I could use some help in fixing the issue independently from any possible software changes. Thank you.
Caused By: java.lang.StackOverflowError at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333) at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:988) at weblogic.servlet.internal.AttributesMap.get(AttributesMap.java:103) at weblogic.servlet.internal.WebAppServletContext.getAttribute(WebAppServletContext.java:520) at org.apache.myfaces.context.servlet.ApplicationMap.getAttribute(ApplicationMap.java:47) at org.apache.myfaces.util.AbstractThreadSafeAttributeMap.get(AbstractThreadSafeAttributeMap.java:90) at javax.faces.application.Application.getMyfacesApplicationInstance(Application.java:100) at javax.faces.application.Application.setFlowHandler(Application.java:1245) at javax.faces.application.Application.setFlowHandler(Application.java:1248) at javax.faces.application.Application.setFlowHandler(Application.java:1248)