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 <[email protected]> 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<
>> [email protected]> 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<[email protected]
>>>
>>>> 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<
>>>> [email protected]> wrote:
>>>>
>>>> On Sun, Mar 18, 2012 at 5:08 PM, Pierre Goupil<[email protected]
>>>>>
>>>>>> 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<[email protected]>
> For additional commands, e-mail: [email protected]
>
>
--
Si tu penses que la violence ne résout rien, c'est que tu n'as pas tapé
assez fort.