[
https://issues.apache.org/jira/browse/TRINIDAD-2008?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Max Starets updated TRINIDAD-2008:
----------------------------------
Resolution: Fixed
Fix Version/s: 2.0.0-beta-1
Status: Resolved (was: Patch Available)
> tr:panelBorderLayout is throwing exception with Mojarra during tag execution
> ----------------------------------------------------------------------------
>
> Key: TRINIDAD-2008
> URL: https://issues.apache.org/jira/browse/TRINIDAD-2008
> Project: MyFaces Trinidad
> Issue Type: Bug
> Affects Versions: 2.0.0-alpha-2
> Environment: Mojarra 2.0.4, WLS
> Reporter: Max Starets
> Assignee: Max Starets
> Fix For: 2.0.0-beta-1
>
> Attachments: TRINIDAD-2002.patch
>
>
> To reproduce the issue, try running the following test.xhtml page:
> <f:view xmlns="http://www.w3.org/1999/xhtml"
> xmlns:h="http://java.sun.com/jsf/html"
> xmlns:f="http://java.sun.com/jsf/core"
> xmlns:tr="http://myfaces.apache.org/trinidad">
>
> <tr:document>
> <tr:form>
> <tr:panelBorderLayout/>
> </tr:form>
> </tr:document>
> </f:view>
> You will notice java.lang.ExceptionInInitializerError
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelBorderLayoutRenderer.<clinit>(PanelBorderLayoutRenderer.java:1102)
> The root cause is the following exception:
> java.lang.NullPointerException
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.LocaleInfoScriptlet.getSupportedLocaleVariant(LocaleInfoScriptlet.java:171)
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.NamedLocaleInfoScriptlet.<init>(NamedLocaleInfoScriptlet.java:62)
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.NamedLocaleInfoScriptlet.registerNamedLocales(NamedLocaleInfoScriptlet.java:47)
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.XhtmlScriptletFactory.registerAllScriptlets(XhtmlScriptletFactory.java:73)
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.XhtmlUtils.<clinit>(XhtmlUtils.java:825)
> at
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelBorderLayoutRenderer.<clinit>(PanelBorderLayoutRenderer.java:1102)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> at java.lang.Class.newInstance0(Class.java:355)
> at java.lang.Class.newInstance(Class.java:308)
> at
> org.apache.myfaces.trinidadinternal.renderkit.ClassRendererInstantiator.instantiate(ClassRendererInstantiator.java:49)
> at
> org.apache.myfaces.trinidadinternal.renderkit.RenderKitBase.findRenderer(RenderKitBase.java:167)
> at
> org.apache.myfaces.trinidadinternal.renderkit.RenderKitDecorator.findRenderer(RenderKitDecorator.java:104)
> at
> org.apache.myfaces.trinidadinternal.renderkit.RenderKitDecorator.findRenderer(RenderKitDecorator.java:114)
> at
> org.apache.myfaces.trinidadinternal.renderkit.RenderKitBase.getRenderer(RenderKitBase.java:129)
> at
> com.sun.faces.application.ApplicationImpl.applyAnnotations(ApplicationImpl.java:1915)
> at
> com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations(ApplicationImpl.java:1864)
> at
> com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1125)
> at
> com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:513)
> at
> com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:153)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:116)
> at
> javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:94)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:133)
> at
> com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:180)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:116)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:133)
> at
> com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:180)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:116)
> at
> com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:163)
> at
> com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:89)
> at
> com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:79)
> at
> com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:148)
> at
> com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:740)
> at
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:96)
>
> It appears that LocaleInfoScriptlet.getSupportedLocaleVariant() counts on
> RenderingContext being present. The issue is that RenderingContext is not
> available during tag execution when
> com.sun.faces.application.ApplicationImpl.applyAnnotations() is going after a
> render.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.