Hi,

I just tried that again (fresh 6.014 TC installation + the patches
from Gurkan on OpenEJB trunk).
I simply want to deploy the the "jsf" example from OpenEJB (the
299/330 APIs I marked as "provided"),
after I apply this patch:
https://issues.apache.org/jira/browse/OPENEJB-1264

* Behavior:

-case: JSF/EJB

@ManagedBean/@RequestScoped (the JSF one)
work fine with @EJB

-case: 299/330 and EJB

The @Named and CDI's @RequestScoped work (bean look-up is fine)
Also, dependency injection works fine, IF I use @Inject for any
injection, other than an
EJB (statefull/stateless).

simple interface + implementation => OK

as soon as the implementation has @Stateless, I get the below exception..

IMO it looks like some issue with the proxy (invocation). See below.
Has one seen this before?

@Gurkan:
What was your Tomcat version that you used ?
You are using trunk with V3 of this patch:
https://issues.apache.org/jira/browse/OPENEJB-1257

right ?

==============================================================================

SEVERE: An exception occurred
javax.faces.el.EvaluationException: javax.el.ELException:
/calculator.xhtml at line 39 and column 64 action="#{calculator.add}":
java.lang.reflect.InvocationTargetException
        at 
javax.faces.component._MethodExpressionToMethodBinding.invoke(_MethodExpressionToMethodBinding.java:96)
        at 
org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:100)
        at javax.faces.component.UICommand.broadcast(UICommand.java:120)
        at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:890)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:234)
        at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1202)
        at 
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:623)
        at 
org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:35)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:143)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:93)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at 
org.apache.openejb.tomcat.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
        at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)
Caused by: javax.el.ELException: /calculator.xhtml at line 39 and
column 64 action="#{calculator.add}":
java.lang.reflect.InvocationTargetException
        at 
org.apache.myfaces.view.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:95)
        at 
javax.faces.component._MethodExpressionToMethodBinding.invoke(_MethodExpressionToMethodBinding.java:88)
        ... 23 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.webbeans.ejb.common.proxy.EjbBeanProxyHandler.invoke(EjbBeanProxyHandler.java:151)
        at 
org.superbiz.jsf.Calculator_$$_javassist_16.add(Calculator_$$_javassist_16.java)
        at org.superbiz.jsf.CalculatorBean.add(CalculatorBean.java:58)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.webbeans.intercept.InterceptorHandler.invoke(InterceptorHandler.java:265)
        at 
org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:78)
        at 
org.superbiz.jsf.CalculatorBean_$$_javassist_15.add(CalculatorBean_$$_javassist_15.java)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.el.parser.AstValue.invoke(AstValue.java:131)
        at 
org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
        at 
org.apache.myfaces.view.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:83)
        ... 24 more
Caused by: java.lang.NullPointerException
        at $Proxy62.add(Unknown Source)
        ... 45 more
Apr 26, 2010 9:51:42 PM
org.apache.webbeans.ejb.common.proxy.EjbBeanProxyHandler hashCode
WARNING: Calling method on proxy is restricted except
Object.toString(), but current method is Object.hashCode
Apr 26, 2010 9:51:42 PM
org.apache.webbeans.ejb.common.proxy.EjbBeanProxyHandler hashCode
WARNING: Calling method on proxy is restricted except
Object.toString(), but current method is Object.hashCode
Apr 26, 2010 9:51:42 PM
org.apache.webbeans.ejb.common.proxy.EjbBeanProxyHandler hashCode
WARNING: Calling method on proxy is restricted except
Object.toString(), but current method is Object.hashCode





On Sun, Apr 25, 2010 at 10:40 PM, Matthias Wessendorf <mat...@apache.org> wrote:
> good idea, but than I get:
>
> Caused by: java.lang.reflect.InvocationTargetException
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at 
> org.apache.webbeans.ejb.common.proxy.EjbBeanProxyHandler.invoke(EjbBeanProxyHandler.java:151)
>        at 
> org.superbiz.jsf.Calculator_$$_javassist_15.add(Calculator_$$_javassist_15.java)
>        at org.superbiz.jsf.CalculatorBean.add(CalculatorBean.java:55)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at 
> org.apache.webbeans.intercept.InterceptorHandler.invoke(InterceptorHandler.java:265)
>        at 
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:78)
>        at 
> org.superbiz.jsf.CalculatorBean_$$_javassist_14.add(CalculatorBean_$$_javassist_14.java)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.el.parser.AstValue.invoke(AstValue.java:131)
>        at 
> org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
>        at 
> org.apache.myfaces.view.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:83)
>        ... 24 more
>
>
> On Sun, Apr 25, 2010 at 10:08 PM, Gurkan Erdogdu
> <cgurkanerdo...@gmail.com> wrote:
>> How you use @EJB? Instead of using @EJB, you can directly inject EJBs using
>> @Inject annotation via Local interface of the EJBs.
>>
>> Look at http://openejb.apache.org/3.0/jndi-names.html for jndi naming.
>>
>> 2010/4/25 Matthias Wessendorf <mat...@apache.org>
>>
>>> Hi,
>>>
>>> I am on TC 6_0_14, combined w/ Gurkan's cool patch. When I have a CDI bean:
>>> @Named("calculator")
>>> @RequestScoped
>>> public class CalculatorBean {
>>> ...
>>> }
>>>
>>> with an @EJB injection, I am getting this ClassCastException:
>>>
>>> Caused by: java.lang.ClassCastException
>>>        at java.lang.Class.cast(Class.java:2990)
>>>        at
>>> org.apache.webbeans.ejb.resource.ResourceInjectionProcessor.lookupFieldResource(ResourceInjectionProcessor.java:97)
>>>        at
>>> org.apache.webbeans.ejb.resource.ResourceInjectionProcessor.getResourceReference(ResourceInjectionProcessor.java:64)
>>>        at
>>> org.apache.webbeans.ejb.resource.ResourceFactory.getResourceReference(ResourceFactory.java:64)
>>>        at
>>> org.apache.webbeans.ejb.resource.OpenEjbResourceInjectionService.getResourceReference(OpenEjbResourceInjectionService.java:50)
>>>        at
>>> org.apache.webbeans.ejb.resource.OpenEjbResourceInjectionService.injectJavaEEResources(OpenEjbResourceInjectionService.java:78)
>>>        at
>>> org.apache.webbeans.component.AbstractInjectionTargetBean.injectResources(AbstractInjectionTargetBean.java:391)
>>>        at
>>> org.apache.webbeans.portable.creation.InjectionTargetProducer.inject(InjectionTargetProducer.java:76)
>>>        at
>>> org.apache.webbeans.component.InjectionTargetWrapper.inject(InjectionTargetWrapper.java:80)
>>>        at
>>> org.apache.webbeans.component.AbstractOwbBean.create(AbstractOwbBean.java:157)
>>>        at
>>> org.apache.webbeans.context.AbstractContext.getInstance(AbstractContext.java:219)
>>>        at
>>> org.apache.webbeans.context.AbstractContext.get(AbstractContext.java:182)
>>>        at
>>> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:117)
>>>        at
>>> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:75)
>>>        at
>>> org.superbiz.jsf.CalculatorBean_$$_javassist_5.getX(CalculatorBean_$$_javassist_5.java)
>>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>        at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>        at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>>        at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
>>>        at
>>> javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
>>>        at
>>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:140)
>>>        at org.apache.el.parser.AstValue.getValue(AstValue.java:97)
>>>        at
>>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
>>>        at
>>> org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:84)
>>>        at
>>> javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:243)
>>>        at javax.faces.component.UIOutput.getValue(UIOutput.java:71)
>>>        at javax.faces.component.UIInput.getValue(UIInput.java:120)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.RendererUtils.getValue(RendererUtils.java:349)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.RendererUtils.getStringValue(RendererUtils.java:297)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderInput(HtmlTextRendererBase.java:149)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.encodeEnd(HtmlTextRendererBase.java:64)
>>>        at
>>> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:486)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:527)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:296)
>>>        at
>>> org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:131)
>>>        at
>>> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:486)
>>>        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:618)
>>>        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
>>>        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
>>>        at
>>> org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
>>>        at
>>> org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
>>>        at
>>> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
>>>        at
>>> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
>>>        at
>>> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
>>>
>>>
>>>
>>> When I comment out the @EJB all is fine.
>>>
>>> Has one seen this before ?
>>>
>>> -Matthias
>>>
>>>
>>>
>>> --
>>> Matthias Wessendorf
>>>
>>> blog: http://matthiaswessendorf.wordpress.com/
>>> sessions: http://www.slideshare.net/mwessendorf
>>> twitter: http://twitter.com/mwessendorf
>>>
>>
>>
>>
>> --
>> Gurkan Erdogdu
>> http://gurkanerdogdu.blogspot.com
>>
>
>
>
> --
> Matthias Wessendorf
>
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> twitter: http://twitter.com/mwessendorf
>



-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf

Reply via email to