Tomas Remes created DELTASPIKE-863:
--------------------------------------
Summary: NPE when invoking proxy for custom jsf converter
Key: DELTASPIKE-863
URL: https://issues.apache.org/jira/browse/DELTASPIKE-863
Project: DeltaSpike
Issue Type: Bug
Components: Core, JSF-Module
Affects Versions: 1.3.1
Environment: EAP 6.4.0.Beta, Weld 1.1.28.Final
Reporter: Tomas Remes
I am not sure whether it's during invoking or creating proxy class but it
manifests with following exception. The problem is that
org.apache.deltaspike.core.util.proxy.invocation.DelegateManualInvocationHandler#proceedOriginal
is called before any delegateInvocationHandler is actually set (see
org.apache.deltaspike.core.util.proxy.DeltaSpikeProxyContextualLifecycle#create):
{noformat}
13:40:53,059 SEVERE
[org.jboss.examples.deltaspike.expensetracker.app.exception.ExceptionHandlers]
(http-/127.0.0.1:8080-2) Handled exception: java.lang.NullPointerException
at
org.apache.deltaspike.core.util.proxy.invocation.DelegateManualInvocationHandler.proceedOriginal(DelegateManualInvocationHandler.java:41)
[deltaspike-core-api-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.apache.deltaspike.core.util.invocation.AbstractManualInvocationHandler.invoke(AbstractManualInvocationHandler.java:62)
[deltaspike-core-api-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.apache.deltaspike.core.util.proxy.invocation.DelegateManualInvocationHandler.staticInvoke(DelegateManualInvocationHandler.java:34)
[deltaspike-core-api-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.jboss.examples.deltaspike.expensetracker.app.converter.TestCurrencyConverter$$DSJsfProxy.clearInitialState(Unknown
Source)
at
javax.faces.convert.NumberConverter.setLocale(NumberConverter.java:474)
[jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar:2.1.28.Final-redhat-1]
at
org.jboss.examples.deltaspike.expensetracker.app.converter.TestCurrencyConverter.<init>(TestCurrencyConverter.java:12)
[classes:]
at
org.jboss.examples.deltaspike.expensetracker.app.converter.TestCurrencyConverter$$DSJsfProxy.<init>(Unknown
Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method) [rt.jar:1.8.0_31]
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[rt.jar:1.8.0_31]
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[rt.jar:1.8.0_31]
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
[rt.jar:1.8.0_31]
at java.lang.Class.newInstance(Class.java:438) [rt.jar:1.8.0_31]
at
org.apache.deltaspike.core.util.proxy.DeltaSpikeProxyContextualLifecycle.create(DeltaSpikeProxyContextualLifecycle.java:63)
[deltaspike-core-api-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.apache.deltaspike.core.util.bean.ImmutableBean.create(ImmutableBean.java:72)
[deltaspike-core-api-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:103)
[weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
at
org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:90)
[weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
at
org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
[weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
at
org.jboss.examples.deltaspike.expensetracker.app.converter.TestCurrencyConverter$Proxy$_$$_WeldClientProxy.markInitialState(TestCurrencyConverter$Proxy$_$$_WeldClientProxy.java)
[classes:]
at javax.faces.component.UIOutput.markInitialState(UIOutput.java:197)
[jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar:2.1.28.Final-redhat-1]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1295)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1299)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.markInitialState(FaceletViewHandlingStrategy.java:1285)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:940)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
[jsf-impl-2.1.28.redhat-7.jar:2.1.28.redhat-7]
at
org.apache.deltaspike.jsf.impl.listener.request.DeltaSpikeLifecycleWrapper.render(DeltaSpikeLifecycleWrapper.java:111)
[deltaspike-jsf-module-impl-ee6-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
[jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar:2.1.28.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.deltaspike.servlet.impl.event.EventBridgeFilter.doFilter(EventBridgeFilter.java:59)
[deltaspike-servlet-module-impl-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.deltaspike.servlet.impl.produce.RequestResponseHolderFilter.doFilter(RequestResponseHolderFilter.java:63)
[deltaspike-servlet-module-impl-1.3.1-SNAPSHOT.jar:1.3.1-SNAPSHOT]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
[jboss-as-jpa-7.5.0.Final-redhat-17.jar:7.5.0.Final-redhat-17]
at
org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
[jboss-as-jpa-7.5.0.Final-redhat-17.jar:7.5.0.Final-redhat-17]
at
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
[jboss-as-web-7.5.0.Final-redhat-17.jar:7.5.0.Final-redhat-17]
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:150)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:854)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:926)
[jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_31]
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)