You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomee.apache.org by Jean-Louis MONTEIRO <je...@atosorigin.com> on 2010/05/03 15:01:23 UTC

Re: IllegalAccessException with TomcatThreadContextListener

As discussed together, i fixed that issue.
Waiting for OpenEJB feedback before committing changes.

Jean-Louis


Matthias Wessendorf wrote:
> 
> In the meantime, I used Tomcat 6.0.14, as a work-around.
> 
> ;-)
> 
> On Sat, Apr 24, 2010 at 4:28 PM, Matthias Wessendorf <ma...@apache.org>
> wrote:
>> Hi,
>>
>> I checked out the 3.1.2 TAG, applied the following patches:
>>
>> - https://issues.apache.org/jira/browse/OPENEJB-1131
>> - https://issues.apache.org/jira/browse/OPENEJB-1257
>>
>> I deployed the openejb.war to Tomcat 6.0.26 and when I
>> deploy (and access the "openejb jsf demo" (see [1])), I see
>> the following in the openejb.log:
>>
>>
>> 2010-04-24 16:02:34,572 - ERROR - Exception in method getThreadName
>> java.lang.IllegalAccessException: Class
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener can not
>> access a member of class org.apache.naming.ContextBindings with
>> modifiers "static"
>>        at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
>>        at java.lang.reflect.Method.invoke(Method.java:588)
>>        at
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener.getThreadName(TomcatThreadContextListener.java:109)
>>        at
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener.contextEntered(TomcatThreadContextListener.java:70)
>>        at
>> org.apache.openejb.core.ThreadContext.enter(ThreadContext.java:53)
>>        at
>> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:148)
>>        at
>> org.apache.openejb.core.ivm.EjbHomeProxyHandler.create(EjbHomeProxyHandler.java:276)
>>        at
>> org.apache.openejb.core.ivm.EjbHomeProxyHandler._invoke(EjbHomeProxyHandler.java:161)
>>        at
>> org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:281)
>>        at $Proxy34.create(Unknown Source)
>>        at
>> org.apache.openejb.core.ivm.naming.BusinessRemoteReference.getObject(BusinessRemoteReference.java:33)
>>        at
>> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:171)
>>        at
>> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:121)
>>        at
>> org.apache.openejb.tomcat.common.AbstractObjectFactory.lookup(AbstractObjectFactory.java:60)
>>        at
>> org.apache.openejb.tomcat.common.AbstractObjectFactory.getObjectInstance(AbstractObjectFactory.java:47)
>>        at
>> org.apache.openejb.tomcat.common.EjbFactory.getObjectInstance(EjbFactory.java:50)
>>        at
>> org.apache.naming.factory.EjbFactory.getObjectInstance(EjbFactory.java:161)
>>        at
>> javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
>>        at org.apache.naming.NamingContext.lookup(NamingContext.java:793)
>>        at org.apache.naming.NamingContext.lookup(NamingContext.java:140)
>>        at org.apache.naming.NamingContext.lookup(NamingContext.java:781)
>>        at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
>>        at
>> org.apache.catalina.util.DefaultAnnotationProcessor.lookupFieldResource(DefaultAnnotationProcessor.java:278)
>>        at
>> org.apache.catalina.util.DefaultAnnotationProcessor.processAnnotations(DefaultAnnotationProcessor.java:192)
>>        at
>> org.apache.myfaces.config.annotation.TomcatAnnotationLifecycleProvider.newInstance(TomcatAnnotationLifecycleProvider.java:46)
>>        at
>> org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:81)
>>        at
>> org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:196)
>>        at
>> org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:162)
>>        at
>> javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$301(FacesCompositeELResolver.java:46)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$4.invoke(FacesCompositeELResolver.java:108)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:104)
>>        at
>> org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:61)
>>        at
>> org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:93)
>>        at
>> javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$301(FacesCompositeELResolver.java:46)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$4.invoke(FacesCompositeELResolver.java:108)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)
>>        at
>> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:104)
>>        at
>> org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:68)
>>        at org.apache.el.parser.AstValue.getTarget(AstValue.java:68)
>>        at org.apache.el.parser.AstValue.invoke(AstValue.java:187)
>>        at
>> org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
>>        at
>> org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68)
>>        at
>> javax.faces.component._MethodExpressionToMethodBinding.invoke(_MethodExpressionToMethodBinding.java:75)
>>        at
>> org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:54)
>>        at javax.faces.component.UICommand.broadcast(UICommand.java:121)
>>        at
>> javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:292)
>>        at javax.faces.component.UIViewRoot.process(UIViewRoot.java:209)
>>        at
>> javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:117)
>>        at
>> org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
>>        at
>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>        at
>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>        at
>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>        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:191)
>>        at
>> org.apache.openejb.tomcat.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
>>        at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>        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:298)
>>        at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
>>        at
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>>        at
>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>>        at java.lang.Thread.run(Thread.java:619)
>> 2010-04-24 16:02:34,583 - ERROR - Exception in method getThreadName
>> java.lang.IllegalAccessException: Class
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener can not
>> access a member of class org.apache.naming.ContextBindings with
>> modifiers "static"
>>        at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
>>        at java.lang.reflect.Method.invoke(Method.java:588)
>>        at
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener.getThreadName(TomcatThreadContextListener.java:109)
>>        at
>> org.apache.openejb.tomcat.catalina.TomcatThreadContextListener.contextEntered(TomcatThreadContextListener.java:70)
>>        at
>> org.apache.openejb.core.ThreadContext.enter(ThreadContext.java:53)
>>        at
>> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:148)
>>        at
>> org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:217)
>>        at
>> org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
>>        at
>> org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:281)
>>        at $Proxy43.add(Unknown Source)
>>        at org.superbiz.jsf.CalculatorBean.add(CalculatorBean.java:49)
>>        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:191)
>>        at
>> org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
>>        at
>> org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68)
>>        at
>> javax.faces.component._MethodExpressionToMethodBinding.invoke(_MethodExpressionToMethodBinding.java:75)
>>        at
>> org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:54)
>>        at javax.faces.component.UICommand.broadcast(UICommand.java:121)
>>        at
>> javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:292)
>>        at javax.faces.component.UIViewRoot.process(UIViewRoot.java:209)
>>        at
>> javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:117)
>>        at
>> org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
>>        at
>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>        at
>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>        at
>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>        at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>        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:191)
>>        at
>> org.apache.openejb.tomcat.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
>>        at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>        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:298)
>>        at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
>>        at
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>>        at
>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>>        at java.lang.Thread.run(Thread.java:619)
>>
>> The Apache Tomcat class that the "TomcatThreadContextListener"
>> complains about can be seen here:
>>
>> http://j.mp/bDsgtY
>>
>> Any ideas? Or seen before ?
>>
>> Thanks,
>> Matthias
>>
>> --
>> 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
> 
> 

-- 
View this message in context: http://openejb.979440.n4.nabble.com/IllegalAccessException-with-TomcatThreadContextListener-tp2063527p2123935.html
Sent from the OpenEJB Dev mailing list archive at Nabble.com.