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

Reply via email to