Are you using Websphere's parent first classloading mode  or parent-last
classloading?

What jars do you have in WEB-INF/lib?


On 8/5/07, junqing chen <[EMAIL PROTECTED]> wrote:
>
> I am using wicket 1.3 beta2 in myproject ,and the application server
> is  websphere 6.0.2. when I  config wicket in websphere using filter mode,
> cant't load  class org.apche.wicket.spring.SpringWebApplicationFactory
> [07-8-3 10:25:25:202 CST] 0000002a WicketFilter  W   try to use
> classloarder : [EMAIL PROTECTED]
> [07-8-3 10:25:25:623 CST] 0000002a WebApp        E   SRVE0026E: [Servlet
> 错误]-[Filter [STPMainApp]: could not be initialized]
> rg.apache.wicket.protocol.http.WebApplicationFactoryCreationException:
> Unable to create application factory of class
> org.apache.wicket.spring.SpringWebApplicationFactory
> Caused by: java.lang.ClassNotFoundException:
> org.apache.wicket.spring.SpringWebApplicationFactory
> at java.net.URLClassLoader.findClass(URLClassLoader.java(Compiled Code))
> at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:103)
> at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code))
> at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code))
> at org.apache.wicket.protocol.http.WicketFilter.getApplicationFactory(
> WicketFilter.java:580)
> ... 20 more
> in the wicketFilter  class , this code used to load  WebApplicationFactory
> :
>                  // Try to find the specified factory class
> final Class factoryClass = Thread.currentThread().getContextClassLoader()
>      .loadClass(appFactoryClassName);
>                               // Instantiate the factory
> return (IWebApplicationFactory)factoryClass.newInstance();
> I add a  debug log , Thread.currentThread().getContextClassLoader(), the
> classLoader is
> [EMAIL PROTECTED]
> but , if  I change web.xml to use servlet model , 
> Thread.currentThread().getContextClassLoader()
> is
> [EMAIL PROTECTED], so ,it load the
> ApplicationFaceotyClass successed. that means , in servlet Model and Filter
> Model in Websphere , the app server using different class load. but , using
> Class.forName(...) , can load the class in both model .
>
>
>
> ---------------------------------
> 抢注雅虎免费邮箱3.5G容量,20M附件!

Reply via email to