Got exception on GAE: 
net.sourceforge.stripes.exception.StripesServletException: Could not 
instantiate specified Configuration. Class name specified was 
[net.sourceforge.stripes.config.RuntimeConfiguration]
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: STS-865
                 URL: http://www.stripesframework.org/jira/browse/STS-865
             Project: Stripes
          Issue Type: Task
    Affects Versions: Release 1.5.6, Release 1.5.5, Release 1.5.4, Release 1.5.2
         Environment: Google App Engine
            Reporter: Victor Krapivin


I'm trying Stripes on Google App Engine, but I see in the logs:

{code}
net.sourceforge.stripes.exception.StripesServletException: Could not 
instantiate specified Configuration. Class name specified was 
[net.sourceforge.stripes.config.RuntimeConfiguration].
        at 
net.sourceforge.stripes.controller.StripesFilter.init(StripesFilter.java:120)
        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at 
org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at 
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:202)
        at 
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:171)
        at 
com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:123)
        at 
com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:422)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:449)
        at 
com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:455)
        at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
        at 
com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
        at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.IllegalAccessException: Reflection is not allowed on 
public net.sourceforge.stripes.config.RuntimeConfiguration()
        at 
com.google.appengine.runtime.Request.process-96effbda7c21167b(Request.java)
        at java.lang.Class.newInstance(Class.java:40)
        at 
net.sourceforge.stripes.controller.StripesFilter.init(StripesFilter.java:114)
        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at 
org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:449)
        at 
com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:455)
        at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
        ... 1 more
{code}

It looks like it is due to code in StripesFilter#init():

{code:java}
try {
            this.configuration = clazz.newInstance();
        }
{code}

According GAE documentation, reflection is not allowed on "external" classes.

Is it possible to rework it without reflection??

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to