[weld-issues] [JBoss JIRA] (WELD-1022) Weld throw NPE with ADF behavior tag

Ivan Li (Updated) (JIRA) jira-events at lists.jboss.org
Wed Dec 7 00:04:41 EST 2011


     [ https://issues.jboss.org/browse/WELD-1022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Li updated WELD-1022:
--------------------------

                   Summary: Weld throw NPE with ADF behavior tag  (was: Weld throw NPE when custome tad do not have value attribute)
    Workaround Description: 
option 1: disable weld
option 2: remove the line <af:showPopupBehavior popupId="popManager" triggerType="click" align="endBefore"/>

which means weld can't work with <af:showPopupBehavior/> together

option 3: use af:clientListener to call show popup js function manually

  was:
option 1: disable weld
option 2: remove the line <af:showPopupBehavior popupId="popManager" triggerType="click" align="endBefore"/>

which means weld can't work with <af:showPopupBehavior/> together, because <af:showPopupBehavior does not have value attribute

               Description: 
we have make Weld-Servlet 1.1.3.SP1 work with ADF in Weblogic server 10.3.5, Weld will throw NPE when ADF behaviors tag http://docs.oracle.com/cd/E16162_01/apirefs.1112/e17491/toc.htm#Behaviors is in use

jsf code below
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<f:view xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:trh="http://myfaces.apache.org/trinidad/html"
    xmlns:tr="http://myfaces.apache.org/trinidad"> 
    <af:document id="d1">
        <f:facet name="metaContainer">
          <af:group>
            <af:resource type="javascript" source="/static/scripts/jquery-1.3.2.js"/>
          </af:group>
        </f:facet>
        <af:form id="f1">
            <af:popup id="popManager">
                                <af:noteWindow id="nw1">
                                    <h:panelGroup style="height: 100%;">
                                        <h:panelGroup layout="block" style="margin-left: 10px; width: 100%;">
                                            <h:panelGrid columns="2"
                                                         columnClasses="probeDetailsLeftCell, probeDetailsRightCell"
                                                         width="100%">
                                                <h:outputText value="id"/>
                                                <h:outputText value="id value"/>

                                                <h:outputText value="summary"/>
                                                <h:outputText value="summary value"/>

                                                <h:outputText value="desc"/>
                                                <h:outputText value="desc value"/>
                                            </h:panelGrid>
                                        </h:panelGroup>
                                    </h:panelGroup>
                                </af:noteWindow>
                            </af:popup>
            <af:panelSplitter orientation="horizontal" splitterPosition="300" id="ps1">
                <f:facet name="first">
                    <af:panelAccordion id="pa1">
                        <af:showDetailItem text="Home" id="sdi1">
                            <af:goImageLink text="Home Page" id="gil1" destination="/index.xhtml"/>
                        </af:showDetailItem>
                    </af:panelAccordion>
                </f:facet>
                <f:facet name="second">
                    <af:panelStretchLayout id="psl">
                        <f:facet name="top">
                            <af:messages id="m1" inline="true"/>
                        </f:facet>
                        <f:facet name="center">
                            
                            <af:outputText value="the value text">
                                <af:showPopupBehavior popupId="popManager" triggerType="click" align="endBefore"/>
                            </af:outputText>
                            
                        </f:facet>
                        <f:facet name="end">
                            <ui:insert name="script"/>
                        </f:facet>
                    </af:panelStretchLayout>
                </f:facet>
            </af:panelSplitter>
        </af:form>
    </af:document>
</f:view>


exception below------------------------------------------------------------------------------------------------------------
java.lang.NullPointerException
	at org.jboss.weld.el.ELCreationalContextStack.getCreationalContextStore(ELCreationalContextStack.java:33)
	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:47)
	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler._getBehavior(ShowPopupBehaviorHandler.java:78)
	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler.getBehavior(ShowPopupBehaviorHandler.java:68)
	at oracle.adfinternal.view.faces.facelets.rich.BehaviorHandler.updateClientListenerSet(BehaviorHandler.java:59)
	at oracle.adfinternal.view.faces.facelets.rich.BaseClientListenerHandler.apply(BaseClientListenerHandler.java:61)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at oracle.adfinternal.view.faces.facelets.rich.RichDocumentHandler.applyNextHandler(RichDocumentHandler.java:68)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:167)
	at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:82)
	at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:744)
	at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.buildView(ViewDeclarationLanguageFactoryImpl.java:341)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:982)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:334)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:232)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
	at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
	at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
	at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
	at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.adf.share.http.ServletADFFilter.doFilter(ServletADFFilter.java:65)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:121)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
	at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
	at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
	at java.security.AccessController.doPrivileged(Native Method)
	at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
	at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
	at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
	at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
	at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
	at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
	at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
	at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
	at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
	at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
	at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

  was:
we have make Weld-Servlet 1.1.3.SP1 work with ADF in Weblogic server 10.3.5, Weld will throw NPE when some adf tag does not have value attribute, eg: ADF behaviors tag http://docs.oracle.com/cd/E16162_01/apirefs.1112/e17491/toc.htm#Behaviors

jsf code below
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<f:view xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:trh="http://myfaces.apache.org/trinidad/html"
    xmlns:tr="http://myfaces.apache.org/trinidad"> 
    <af:document id="d1">
        <f:facet name="metaContainer">
          <af:group>
            <af:resource type="javascript" source="/static/scripts/jquery-1.3.2.js"/>
          </af:group>
        </f:facet>
        <af:form id="f1">
            <af:popup id="popManager">
                                <af:noteWindow id="nw1">
                                    <h:panelGroup style="height: 100%;">
                                        <h:panelGroup layout="block" style="margin-left: 10px; width: 100%;">
                                            <h:panelGrid columns="2"
                                                         columnClasses="probeDetailsLeftCell, probeDetailsRightCell"
                                                         width="100%">
                                                <h:outputText value="id"/>
                                                <h:outputText value="id value"/>

                                                <h:outputText value="summary"/>
                                                <h:outputText value="summary value"/>

                                                <h:outputText value="desc"/>
                                                <h:outputText value="desc value"/>
                                            </h:panelGrid>
                                        </h:panelGroup>
                                    </h:panelGroup>
                                </af:noteWindow>
                            </af:popup>
            <af:panelSplitter orientation="horizontal" splitterPosition="300" id="ps1">
                <f:facet name="first">
                    <af:panelAccordion id="pa1">
                        <af:showDetailItem text="Home" id="sdi1">
                            <af:goImageLink text="Home Page" id="gil1" destination="/index.xhtml"/>
                        </af:showDetailItem>
                    </af:panelAccordion>
                </f:facet>
                <f:facet name="second">
                    <af:panelStretchLayout id="psl">
                        <f:facet name="top">
                            <af:messages id="m1" inline="true"/>
                        </f:facet>
                        <f:facet name="center">
                            
                            <af:outputText value="the value text">
                                <af:showPopupBehavior popupId="popManager" triggerType="click" align="endBefore"/>
                            </af:outputText>
                            
                        </f:facet>
                        <f:facet name="end">
                            <ui:insert name="script"/>
                        </f:facet>
                    </af:panelStretchLayout>
                </f:facet>
            </af:panelSplitter>
        </af:form>
    </af:document>
</f:view>


exception below------------------------------------------------------------------------------------------------------------
java.lang.NullPointerException
	at org.jboss.weld.el.ELCreationalContextStack.getCreationalContextStore(ELCreationalContextStack.java:33)
	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:47)
	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler._getBehavior(ShowPopupBehaviorHandler.java:78)
	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler.getBehavior(ShowPopupBehaviorHandler.java:68)
	at oracle.adfinternal.view.faces.facelets.rich.BehaviorHandler.updateClientListenerSet(BehaviorHandler.java:59)
	at oracle.adfinternal.view.faces.facelets.rich.BaseClientListenerHandler.apply(BaseClientListenerHandler.java:61)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
	at oracle.adfinternal.view.faces.facelets.rich.RichDocumentHandler.applyNextHandler(RichDocumentHandler.java:68)
	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
	at com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:167)
	at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
	at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:82)
	at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:744)
	at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.buildView(ViewDeclarationLanguageFactoryImpl.java:341)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:982)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:334)
	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:232)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
	at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
	at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
	at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
	at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.adf.share.http.ServletADFFilter.doFilter(ServletADFFilter.java:65)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:121)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
	at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
	at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
	at java.security.AccessController.doPrivileged(Native Method)
	at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
	at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
	at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
	at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
	at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
	at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
	at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
	at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
	at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
	at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
	at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)


    
> Weld throw NPE with ADF behavior tag
> ------------------------------------
>
>                 Key: WELD-1022
>                 URL: https://issues.jboss.org/browse/WELD-1022
>             Project: Weld
>          Issue Type: Bug
>          Components: Web Tier integration (JSF, JSP, EL and Servlet) 
>    Affects Versions: 1.1.3.SP1
>         Environment: WebLogic 10.3.5
>            Reporter: Ivan Li
>
> we have make Weld-Servlet 1.1.3.SP1 work with ADF in Weblogic server 10.3.5, Weld will throw NPE when ADF behaviors tag http://docs.oracle.com/cd/E16162_01/apirefs.1112/e17491/toc.htm#Behaviors is in use
> jsf code below
> <?xml version='1.0' encoding='UTF-8'?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <f:view xmlns:f="http://java.sun.com/jsf/core" 
>     xmlns:h="http://java.sun.com/jsf/html"
>     xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
>     xmlns:ui="http://java.sun.com/jsf/facelets"
>     xmlns:c="http://java.sun.com/jsp/jstl/core"
>     xmlns:trh="http://myfaces.apache.org/trinidad/html"
>     xmlns:tr="http://myfaces.apache.org/trinidad"> 
>     <af:document id="d1">
>         <f:facet name="metaContainer">
>           <af:group>
>             <af:resource type="javascript" source="/static/scripts/jquery-1.3.2.js"/>
>           </af:group>
>         </f:facet>
>         <af:form id="f1">
>             <af:popup id="popManager">
>                                 <af:noteWindow id="nw1">
>                                     <h:panelGroup style="height: 100%;">
>                                         <h:panelGroup layout="block" style="margin-left: 10px; width: 100%;">
>                                             <h:panelGrid columns="2"
>                                                          columnClasses="probeDetailsLeftCell, probeDetailsRightCell"
>                                                          width="100%">
>                                                 <h:outputText value="id"/>
>                                                 <h:outputText value="id value"/>
>                                                 <h:outputText value="summary"/>
>                                                 <h:outputText value="summary value"/>
>                                                 <h:outputText value="desc"/>
>                                                 <h:outputText value="desc value"/>
>                                             </h:panelGrid>
>                                         </h:panelGroup>
>                                     </h:panelGroup>
>                                 </af:noteWindow>
>                             </af:popup>
>             <af:panelSplitter orientation="horizontal" splitterPosition="300" id="ps1">
>                 <f:facet name="first">
>                     <af:panelAccordion id="pa1">
>                         <af:showDetailItem text="Home" id="sdi1">
>                             <af:goImageLink text="Home Page" id="gil1" destination="/index.xhtml"/>
>                         </af:showDetailItem>
>                     </af:panelAccordion>
>                 </f:facet>
>                 <f:facet name="second">
>                     <af:panelStretchLayout id="psl">
>                         <f:facet name="top">
>                             <af:messages id="m1" inline="true"/>
>                         </f:facet>
>                         <f:facet name="center">
>                             
>                             <af:outputText value="the value text">
>                                 <af:showPopupBehavior popupId="popManager" triggerType="click" align="endBefore"/>
>                             </af:outputText>
>                             
>                         </f:facet>
>                         <f:facet name="end">
>                             <ui:insert name="script"/>
>                         </f:facet>
>                     </af:panelStretchLayout>
>                 </f:facet>
>             </af:panelSplitter>
>         </af:form>
>     </af:document>
> </f:view>
> exception below------------------------------------------------------------------------------------------------------------
> java.lang.NullPointerException
> 	at org.jboss.weld.el.ELCreationalContextStack.getCreationalContextStore(ELCreationalContextStack.java:33)
> 	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:47)
> 	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
> 	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler._getBehavior(ShowPopupBehaviorHandler.java:78)
> 	at oracle.adfinternal.view.faces.facelets.rich.ShowPopupBehaviorHandler.getBehavior(ShowPopupBehaviorHandler.java:68)
> 	at oracle.adfinternal.view.faces.facelets.rich.BehaviorHandler.updateClientListenerSet(BehaviorHandler.java:59)
> 	at oracle.adfinternal.view.faces.facelets.rich.BaseClientListenerHandler.apply(BaseClientListenerHandler.java:61)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
> 	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
> 	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
> 	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
> 	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
> 	at com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply(FacetHandler.java:104)
> 	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
> 	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
> 	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
> 	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
> 	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
> 	at oracle.adfinternal.view.faces.facelets.rich.RichDocumentHandler.applyNextHandler(RichDocumentHandler.java:68)
> 	at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:184)
> 	at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
> 	at com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:167)
> 	at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
> 	at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
> 	at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:82)
> 	at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152)
> 	at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:744)
> 	at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.buildView(ViewDeclarationLanguageFactoryImpl.java:341)
> 	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:982)
> 	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:334)
> 	at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:232)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
> 	at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
> 	at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
> 	at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
> 	at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at oracle.adf.share.http.ServletADFFilter.doFilter(ServletADFFilter.java:65)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:121)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
> 	at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
> 	at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
> 	at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
> 	at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
> 	at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
> 	at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
> 	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
> 	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
> 	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
> 	at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
> 	at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
> 	at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
> 	at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
> 	at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
> 	at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the weld-issues mailing list