You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cactus-user@jakarta.apache.org by KK...@gkservices.com on 2004/06/09 19:36:13 UTC

Newbie - IncompatibleClassChangeError




Hi,

I'm new to Cactus. Looks like a good product, btw.
I'm using:
Tomcat 4.1
JDK1.4.1
Windows2000

I followed the instructions from
http://jakarta.apache.org/cactus/integration/howto_tomcat.html.
When I invoke
http://localhost:8080/test/ServletTestRunner?suite=TestSampleServlet, I get
the following:
<testsuites>
-<testsuite name="TestSampleServlet" tests="1" failures="0" errors="1"
time="0">
-<testcase name="testSaveToSessionOK" time="0">
-<error message="null" type="java.lang.IncompatibleClassChangeError">
java.lang.IncompatibleClassChangeError
      at TestSampleServlet.beginSaveToSessionOK(TestSampleServlet.java:22)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at
org.apache.cactus.internal.client.ClientTestCaseCaller.callGenericBeginMethod(ClientTestCaseCaller.java:358)
      at
org.apache.cactus.internal.client.ClientTestCaseCaller.callBeginMethod_aroundBody0(ClientTestCaseCaller.java:192)
      at
org.apache.cactus.internal.client.ClientTestCaseCaller.callBeginMethod_aroundBody1$advice(ClientTestCaseCaller.java:124)
      at
org.apache.cactus.internal.client.ClientTestCaseCaller.callBeginMethod(ClientTestCaseCaller.java)
      at
org.apache.cactus.internal.client.ClientTestCaseCaller.runTest(ClientTestCaseCaller.java:141)
      at
org.apache.cactus.internal.AbstractCactusTestCase.runBareClient(AbstractCactusTestCase.java:215)
      at
org.apache.cactus.internal.AbstractCactusTestCase.runBare(AbstractCactusTestCase.java:133)
      at
org.apache.cactus.server.runner.ServletTestRunner.run(ServletTestRunner.java:315)
      at
org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody0(ServletTestRunner.java:193)
      at
org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody1$advice(ServletTestRunner.java:124)
      at
org.apache.cactus.server.runner.ServletTestRunner.doGet(ServletTestRunner.java)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
      at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396)
      at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
      at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
      at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
      at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
      at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.
run(ThreadPool.java:533)
      at java.lang.Thread.run(Thread.java:536)
</error>
</testcase>
</testsuite>
</testsuites>

The instructions didn't say anything about the web.xml that sits underneath
/webapps/test/WEB-INF. My web.xml has this:
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>
</web-app>

Any ideas of what I may have missed?

Thanks,
Kevin