java.lang.NoSuchFieldException when MyFaces and Mojarra are on the classpath
----------------------------------------------------------------------------
Key: MYFACES-2601
URL: https://issues.apache.org/jira/browse/MYFACES-2601
Project: MyFaces Core
Issue Type: Bug
Components: JSR-314
Affects Versions: 2.0.0-beta-3
Environment: GlassFish v3
Reporter: Jakob Korherr
Assignee: Jakob Korherr
When starting MyFaces with the appropriate configurations in GlassFish's
sun-web.xml, everything functions properly except for this ugly Exception at
startup:
SCHWERWIEGEND: Cannot find private field _firstInstance from ExternalContext
java.lang.NoSuchFieldException: _firstInstance
at java.lang.Class.getDeclaredField(Class.java:1882)
at
org.apache.myfaces.context.FacesContextFactoryImpl.<init>(FacesContextFactoryImpl.java:81)
This is caused because MyFaces provides this field in its implementation of
javax.faces.context.ExternalContext, but Mojarra does not. And althought we set
the right configuration parameters for using MyFaces, GlassFish wants to use
Mojarra's version of this class when accessing the field via reflection.
The solution to this is very easy. We just have to store _firstInstance in a
package private class with a specific name (_MyFacesExternalContextHelper) so
we won't run into any classloading problems.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.