You're missing the wicket-request jar.

Sven

On 03/20/2012 08:38 PM, Pierre Goupil wrote:
You were absolutely right, Sven! Now, my unit tests pass and I can launch
my app. But amongst some minor problems, I have this exception in my
start-up logs:

java.lang.NoClassDefFoundError: org/apache/wicket/request/Request
     at java.lang.Class.getDeclaredMethods0(Native Method)
     at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
     at java.lang.Class.getDeclaredMethods(Class.java:1808)
     at
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findPersistenceMetadata(PersistenceAnnotationBeanPostProcessor.java:382)
     at
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(PersistenceAnnotationBeanPostProcessor.java:320)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:798)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:493)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
     at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
     at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
     at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
     at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
     at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
     at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
     at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
     at
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:282)
     at
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:204)
     at
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
     at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
     at
org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
     at
org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
     at java.util.concurrent.FutureTask.run(FutureTask.java:166)
     at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
     at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
     at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.ClassNotFoundException:
org.apache.wicket.request.Request
     at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
     at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
     ... 26 more
20 mars 2012 20:27:17 org.apache.catalina.core.StandardContext listenerStart
GRAVE: Exception lors de l'envoi de l'évènement contexte initialisé
(context initialized) à l'instance de classe d'écoute (listener)
org.springframework.web.context.ContextLoaderListener
java.lang.NoClassDefFoundError: org/apache/wicket/request/Request
     at java.lang.Class.getDeclaredMethods0(Native Method)
     at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
     at java.lang.Class.getDeclaredMethods(Class.java:1808)
     at
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findPersistenceMetadata(PersistenceAnnotationBeanPostProcessor.java:382)
     at
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(PersistenceAnnotationBeanPostProcessor.java:320)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:798)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:493)
     at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
     at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
     at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
     at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
     at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
     at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
     at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
     at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
     at
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:282)
     at
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:204)
     at
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
     at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
     at
org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
     at
org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
     at java.util.concurrent.FutureTask.run(FutureTask.java:166)
     at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
     at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
     at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.ClassNotFoundException:
org.apache.wicket.request.Request
     at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
     at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
     ... 26 more




Do you have any idea where it can come from? I've checked my classpath and
it looks OK, now.

Regards,

Pierre Goupil





On Sun, Mar 18, 2012 at 11:35 PM, Sven Meier<s...@meiers.net>  wrote:

Perhaps a classloader issue? Check whether you have two Wicket versions in
your project.

Sven


On 03/18/2012 10:56 PM, Pierre Goupil wrote:

Actually, this error occurs in my unit tests. I can't launch the app at
this very moment, because some more things need to be managed during the
migration. But this simple test should work as it all compiles.

As expected, the constructor from WebSession is called by
MyApplication#newSession(**Request request, Response response)

Regards,

Pierre Goupil




On Sun, Mar 18, 2012 at 10:48 PM, Jeremy Thomerson<
jer...@wickettraining.com>   wrote:

  Put a breakpoint in the WebSession constructor and see where it's getting
called.

Or, perhaps you won't see anything there if this is happening because you
are in a serialized WebSession.  You can test that by clearing all
cookies,
etc, and starting a new session.

--
Jeremy Thomerson
http://wickettraining.com
*Need a CMS for Wicket?  Use Brix! http://brixcms.org*

On Sun, Mar 18, 2012 at 5:40 PM, Pierre Goupil<goupilpie...@gmail.com

wrote:
Yes, absolutely:


    public Session newSession(final Request request, final Response
response)
    {
        return new MySession(request);
     }




On Sun, Mar 18, 2012 at 10:32 PM, Jeremy Thomerson<
jer...@wickettraining.com>   wrote:

  On Sun, Mar 18, 2012 at 5:08 PM, Pierre Goupil<goupilpie...@gmail.com
wrote:
Good evening,

I'm currently in the process of migrating my app from Wicket 1.4 to

Wicket

1.5. I've read the migration guide and everything seems to go fine,

except

for session management.

Here's my code:

public class MySession extends WebSession
{

  public static MySession get()
    {
        return (MySession)Session.get();
    }

}

When call, the get() method gives this stacktrace:

Caused by: java.lang.ClassCastException:
org.apache.wicket.protocol.**http.WebSession cannot be cast to

MySession
Any help, please?
Regards,

Pierre Goupil


Does your application override newSession and return a new MySession?

--
Jeremy Thomerson
http://wickettraining.com
*Need a CMS for Wicket?  Use Brix! http://brixcms.org*


--
Si tu penses que la violence ne résout rien, c'est que tu n'as pas tapé
assez fort.



------------------------------**------------------------------**---------
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.org<users-unsubscr...@wicket.apache.org>
For additional commands, e-mail: users-h...@wicket.apache.org





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to