[Logo] Enterprise Client Community
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
huh? What can't it access?  XML
Forum Index -> Development
Author Message
gjones

Power User

Joined: 30/06/2009 16:52:33
Messages: 38
Offline

Code:
javax.servlet.ServletException: Servlet execution threw an exception
 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:313)
 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 	at org.eclnt.jsfserver.util.ThreadingFilter.doFilter(ThreadingFilter.java:175)
 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 	at org.eclnt.jsfserver.util.CompressionFilter.doFilter(CompressionFilter.java:33)
 	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.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:286)
 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
 	at java.lang.Thread.run(Unknown Source)
 Caused by: java.lang.Error: java.lang.Error: java.lang.IllegalAccessException: Class org.eclnt.jsfserver.util.StackedMethodBinding can not access a member of class my.code.base.managedbeans.SomeClass$MyGridBinding with modifiers "public"
 	at org.eclnt.jsfserver.elements.MethodBindingDelegator.invoke(MethodBindingDelegator.java:113)
 	at org.eclnt.jsfserver.elements.BaseActionComponent.broadcast(BaseActionComponent.java:237)
 	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267)
 	at javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:364)
 	at com.sun.faces.lifecycle.UpdateModelValuesPhase.execute(UpdateModelValuesPhase.java:81)
 	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
 	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
 	... 17 more
 Caused by: java.lang.Error: java.lang.IllegalAccessException: Class org.eclnt.jsfserver.util.StackedMethodBinding can not access a member of class my.code.base.managedbeans.SomeClass$MyGridBinding with modifiers "public"
 	at org.eclnt.jsfserver.util.StackedMethodBinding.invoke(StackedMethodBinding.java:91)
 	at org.eclnt.jsfserver.elements.MethodBindingDelegator.invoke(MethodBindingDelegator.java:72)
 	... 25 more
 Caused by: java.lang.IllegalAccessException: Class org.eclnt.jsfserver.util.StackedMethodBinding can not access a member of class my.code.base.managedbeans.SomeClass$MyGridBinding with modifiers "public"
 	at sun.reflect.Reflection.ensureMemberAccess(Unknown Source)
 	at java.lang.reflect.Method.invoke(Unknown Source)
 	at org.eclnt.jsfserver.util.StackedMethodBinding.invoke(StackedMethodBinding.java:67)
 	... 26 more
 


I can find nothing in the logs and nothing in the above error message to indicate what it was trying to do.
mreich

Power User
[Avatar]

Joined: 30/01/2009 08:34:23
Messages: 744
Offline

Hi,

can you send your coding of class SomeClass? It seems that sthgs wrong with the visibility of some methods?

regards
Markus
[WWW]
gjones

Power User

Joined: 30/06/2009 16:52:33
Messages: 38
Offline

Hi Markus,

Yeah, I gathered that, thanks. My complaint was that I would have expected to see the name of the method in the error, but it just says "can not access a member of class ...". I would expect that the code trying to access the member would know what it was trying to access and be able report that fact.

I've fixed it, anyway, by rolling back through the changes until I found what it was that caused it.
CaptainCasa

Power User
[Avatar]

Joined: 21/11/2007 12:23:06
Messages: 5521
Offline

Hi,

have you checked the full log?

This is the code of StackedMethodBinding, line 91 is highlighted:

Code:
     public Object invoke(FacesContext context, Object[] args)
             throws EvaluationException, MethodNotFoundException
     {
         try
         {
             Object o = m_valueBinding.getValue(context);
             if (o == null)
             {
                 CLog.L.log(CLog.LL_ERR,"Object for execution of method \"+m_methodName+\"is null. ValueBinding is: " + m_valueBinding.getExpressionString());
                 return null;
             }
             Method m = o.getClass().getMethod(m_methodName,new Class[] {ActionEvent.class});
             m.invoke(o,args);
         }
         catch (InvocationTargetException itexc)
         {
             // original exception to be passed back to application processing
             CLog.L.log(CLog.LL_ERR,"Invocation target exception: " + m_methodName + ", " + itexc.toString());
             if (itexc.getCause() != null)
                 throw new Error(itexc.getCause());
             else
                 throw new Error(itexc);
         }
         catch (NoSuchMethodException nsme)
         {
             CLog.L.log(CLog.LL_ERR,"Method not available: " + m_methodName);
             throw new MethodNotFoundException(nsme);
         }
         catch (ArrayIndexOutOfBoundsException exc)
         {
             CLog.L.log(CLog.LL_ERR,"Array index not available: " + m_methodName);
             throw new Error(exc);
         }
         catch (Throwable t)
         {
             CLog.L.log(CLog.LL_ERR,"Invoke failed: " + m_methodName,t);
             throw new Error(t); // >>>> line 91 <<<<<
         }
         return null;
     }
 


There must be a "Invoke failed" with the output of the method name...

Björn

Björn Müller, CaptainCasa GmbH
CaptainCasa

Power User
[Avatar]

Joined: 21/11/2007 12:23:06
Messages: 5521
Offline

CaptainCasa logs by default are written into tomcat/work/etc. etc. of your web application.

You can configure details by defining /eclntjsfserver/config/logging.xml, there is also an option to output all log info to console as well (which is quite useful for development scenarios).

Björn

Björn Müller, CaptainCasa GmbH
 
Forum Index -> Development
Go to:   
Powered by JForum 2.1.6 © JForum Team