Changed follow your advice, but the error is the same. It may not the code's
problem but some special configuration of the Web Container.
Error Page from browser:

*type* Exception report

*message*

*description*The server encountered an internal error () that prevented it
from fulfilling this request.

*exception*

javax.servlet.ServletException: PWC1391: Servlet.init() for servlet
HelloWorldApplication threw exception

*root cause*

org.apache.wicket.WicketRuntimeException: Unable to create application
of class com.example.helloworld.HelloWorldApplication

*root cause*

java.lang.ClassNotFoundException: com.example.helloworld.HelloWorldApplication

*note* *The full stack traces of the exception and its root causes are
available in the GlassFish/v3 logs.*

2008/12/16 Ajayi Yinka <iamstyaj...@googlemail.com>

> From the error log, it seems glass fish could not load the webApplication
> class.
>
> Make sure your webApplication class is in the correct class path
> (com.example.helloworld.HelloWorldApplication)
>
> And the webApplcation class is in the correct format.
>
> or
>
> and may change your web.xml file to be in this format:
>
> <filter>
>        <filter-name>HelloWorldApplication</filter-name>
>
> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
>         <init-param>
>            <param-name>applicationClassName</param-name>
>
> <param-value>com.example.helloworld.HelloWorldApplication</param-value>
>        </init-param>
>         <init-param>
>            <param-name>debug</param-name>
>            <param-value>2</param-value>
>        </init-param>
>    </filter>
> 2008/12/16 Daniel <lia...@gmail.com>
>
> > Hi,
> > I'm an newbie in Wicket. When I create my first hello world wicket
> program,
> > strange error encounted.
> >
> > The hello world program is just to show 'Hello World' through Label.
> >
> > The web.xml is as below,
> >
> >  <servlet>
> >   <servlet-name>HelloWorldApplication</servlet-name>
> >
> >
> >
> <servlet-class>org.apache.wicket.protocol.http.WicketServlet</servlet-class>
> >   <init-param>
> >   <param-name>applicationClassName</param-name>
> >   <param-value>com.example.helloworld.HelloWorldApplication</param-value>
> >   </init-param>
> >  </servlet>
> >  <servlet-mapping>
> >   <servlet-name>HelloWorldApplication</servlet-name>
> >   <url-pattern>/helloWorld/*</url-pattern>
> >  </servlet-mapping>
> >
> > In Tomcat env, when I call the URL :
> > http://localhost:8080/WicketExamples/helloWorld/.
> > <http://localhost:8080/WicketExamples/helloWorld/>Everything
> > goes well.
> > When I use the URL: http://localhost:8080/WicketExamples/, show 404
> error.
> >
> > But the same program runs in GlassFish env. when I call the same URL,
> error
> > comes as below
> >
> > 2008-12-16 17:32:00 org.apache.catalina.core.ApplicationContext log
> > 严重: WebModule[/WicketExamples]StandardWrapper.Throwable
> > org.apache.wicket.WicketRuntimeException: Unable to create application of
> > class com.example.helloworld.HelloWorldApplication
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:82)
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:49)
> > at
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:666)
> > at
> >
> org.apache.wicket.protocol.http.WicketServlet.init(WicketServlet.java:209)
> > at javax.servlet.GenericServlet.init(GenericServlet.java:270)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1198)
> > at
> >
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:863)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:369)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139)
> > at
> >
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
> > at
> >
> >
> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
> > at
> >
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> > at
> >
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> > at
> >
> >
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242)
> > at
> >
> >
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
> > at
> >
> >
> com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71)
> > at
> >
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
> > at
> >
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
> > at
> > com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
> > at
> >
> >
> com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
> > at
> >
> >
> com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
> > at
> >
> >
> com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325)
> > at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
> > Caused by: java.lang.ClassNotFoundException:
> > com.example.helloworld.HelloWorldApplication
> > at
> >
> >
> org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1509)
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:68)
> > ... 38 more
> >
> > 2008-12-16 17:32:00 org.apache.catalina.core.StandardWrapperValve log
> > 严重: StandardWrapperValve[HelloWorldApplication]: PWC1382: Allocate
> > exception
> > for servlet HelloWorldApplication
> > org.apache.wicket.WicketRuntimeException: Unable to create application of
> > class com.example.helloworld.HelloWorldApplication
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:82)
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:49)
> > at
> org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:666)
> > at
> >
> org.apache.wicket.protocol.http.WicketServlet.init(WicketServlet.java:209)
> > at javax.servlet.GenericServlet.init(GenericServlet.java:270)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1198)
> > at
> >
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:863)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:369)
> > at
> >
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139)
> > at
> >
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
> > at
> >
> >
> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
> > at
> >
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> > at
> >
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
> > at
> >
> >
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
> > at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> > at
> >
> >
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242)
> > at
> >
> >
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827)
> > at
> >
> >
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
> > at
> >
> >
> com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71)
> > at
> >
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
> > at
> >
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
> > at
> > com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
> > at
> >
> >
> com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
> > at
> >
> >
> com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
> > at
> >
> >
> com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325)
> > at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
> > Caused by: java.lang.ClassNotFoundException:
> > com.example.helloworld.HelloWorldApplication
> > at
> >
> >
> org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1509)
> > at
> >
> >
> org.apache.wicket.protocol.http.ContextParamWebApplicationFactory.createApplication(ContextParamWebApplicationFactory.java:68)
> > ... 38 more
> >
> > When I use the URL http://localhost:8080/WicketExamples/, the result is
> > correct.
> >
> > My env is
> > JDK 1.5.0_16
> > Wicket 1.4rc1
> > Tomcat 6.0
> > GlassFish v3
> >
> > Can anybody help me?
> >
> > Thank you in advance.
> > --
> > Best regards,
> > Daniel
> >
>



-- 
Best regards,
Daniel

Reply via email to