Hi Vivek, A VerifyError is usually because you have compiled some class files with one version of a framework and then you're executing these .class files with another version of the framework in your classpath. Ideally this shouldn't happen if binary compatibility is preserved between versions of Cactus. This hasn't been the case. We're now trying to be more careful but in order to be able to preserve it we still need to break binary compatibility for a while.
To solve the problem, make sure any of your class that extends Cactus is recompiled with whatever new version of Cactus you're now using. Thanks -Vincent > -----Original Message----- > From: vivek oswal [mailto:[EMAIL PROTECTED] > Sent: 08 November 2003 15:07 > To: [EMAIL PROTECTED] > Subject: A VerrifyError due to Incompatible object argument for function > Class.forName0 > > Hey all, > I have configured cactus with > Jboss version 3.2.1 (jetty as the web-container) > My application is deployed as an exploded ear folder > containing a war archive too. The web.xml for the > webapplication have the necessary servlet entries and > the JBOSS_HOME\server\default\lib contains the > necessary cactus-libraries. > > I have modified a sample servlet from cactus example > to write my testcase. Upon invoking the same from the > browser, I get the following failure which I have not > been able to resolve: > > <?xml version="1.0" encoding="UTF-8" ?> > - <testsuites> > - <testsuite > name="CRM.UserInterface.unittest.CustomerListWebServiceTest" > tests="1" failures="1" errors="0" time="0.313"> > - <testcase name="warning" time="0.016"> > <failure message="Exception in constructor: > testSaveToSessionOK (java.lang.VerifyError: (class: > org/apache/cactus/client/connector/http/HttpClientConnectionHelper, > method: addUserData signature: > (Lorg/apache/cactus/WebRequest;)V) Incompatible object > argument for function call at > java.lang.Class.forName0(Native Method) at > java.lang.Class.forName(Class.java:141) at > org.apache.cactus.configuration.BaseConfiguration.<clinit>(BaseConfigura ti > on.java:94) > at > org.apache.cactus.ServletTestCase.init(ServletTestCase.java:188) > at > org.apache.cactus.ServletTestCase.<init>(ServletTestCase.java:164) > at > CRM.UserInterface.unittest.CustomerListWebServiceTest.<init>(CustomerLis tW > ebServiceTest.java:25) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA cc > essorImpl.java:39) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons tr > uctorAccessorImpl.java:27) > at > java.lang.reflect.Constructor.newInstance(Constructor.java:274) > at > junit.framework.TestSuite.createTest(TestSuite.java:135) > at > junit.framework.TestSuite.addTestMethod(TestSuite.java:114) > at junit.framework.TestSuite.<init>(TestSuite.java:75) > at > CRM.UserInterface.unittest.CustomerListWebServiceTest.suite(CustomerList We > bServiceTest.java:30) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a: > 39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Im > pl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) at > junit.runner.BaseTestRunner.getTest(BaseTestRunner.java:111) > at > org.apache.cactus.server.runner.ServletTestRunner.run(ServletTestRunner. ja > va:302) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody0(Serv le > tTestRunner.java:209) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody1$advi ce > (ServletTestRunner.java:151) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet(ServletTestRunne r. > java) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360) > at > org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationH an > dler.java:294) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:558) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1714) > at > org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationCon te > xt.java:507) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1664) > at > org.mortbay.http.HttpServer.service(HttpServer.java:863) > at org.jboss.jetty.Jetty.service(Jetty.java:460) at > org.mortbay.http.HttpConnection.service(HttpConnection.java:775) > at > org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:939) > at > org.mortbay.http.HttpConnection.handle(HttpConnection.java:792) > at > org.mortbay.http.SocketListener.handleConnection(SocketListener.java:201 ) > at > org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289) > at > org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455) > )" > type="junit.framework.AssertionFailedError">junit.framework.AssertionFai le > dError: > Exception in constructor: testSaveToSessionOK > (java.lang.VerifyError: (class: > org/apache/cactus/client/connector/http/HttpClientConnectionHelper, > method: addUserData signature: > (Lorg/apache/cactus/WebRequest;)V) Incompatible object > argument for function call at > java.lang.Class.forName0(Native Method) at > java.lang.Class.forName(Class.java:141) at > org.apache.cactus.configuration.BaseConfiguration.<clinit>(BaseConfigura ti > on.java:94) > at > CRM.UserInterface.unittest.CustomerListWebServiceTest.<init>(CustomerLis tW > ebServiceTest.java:25) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA cc > essorImpl.java:39) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons tr > uctorAccessorImpl.java:27) > at > java.lang.reflect.Constructor.newInstance(Constructor.java:274) > at > CRM.UserInterface.unittest.CustomerListWebServiceTest.suite(CustomerList We > bServiceTest.java:30) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a: > 39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Im > pl.java:25) > at > junit.runner.BaseTestRunner.getTest(BaseTestRunner.java:111) > at > org.apache.cactus.server.runner.ServletTestRunner.run(ServletTestRunner. ja > va:302) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody0(Serv le > tTestRunner.java:209) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody1$advi ce > (ServletTestRunner.java:151) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet(ServletTestRunne r. > java) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360) > at > org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationH an > dler.java:294) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:558) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1714) > at > org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationCon te > xt.java:507) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1664) > at > org.mortbay.http.HttpServer.service(HttpServer.java:863) > at org.jboss.jetty.Jetty.service(Jetty.java:460) at > org.mortbay.http.HttpConnection.service(HttpConnection.java:775) > at > org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:939) > at > org.mortbay.http.HttpConnection.handle(HttpConnection.java:792) > at > org.mortbay.http.SocketListener.handleConnection(SocketListener.java:201 ) > at > org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289) > at > org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455) > ) at > org.apache.cactus.server.runner.ServletTestRunner.run(ServletTestRunner. ja > va:313) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody0(Serv le > tTestRunner.java:209) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet_aroundBody1$advi ce > (ServletTestRunner.java:151) > at > org.apache.cactus.server.runner.ServletTestRunner.doGet(ServletTestRunne r. > java) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360) > at > org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationH an > dler.java:294) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:558) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1714) > at > org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationCon te > xt.java:507) > at > org.mortbay.http.HttpContext.handle(HttpContext.java:1664) > at > org.mortbay.http.HttpServer.service(HttpServer.java:863) > at org.jboss.jetty.Jetty.service(Jetty.java:460) at > org.mortbay.http.HttpConnection.service(HttpConnection.java:775) > at > org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:939) > at > org.mortbay.http.HttpConnection.handle(HttpConnection.java:792) > at > org.mortbay.http.SocketListener.handleConnection(SocketListener.java:201 ) > at > org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289) > at > org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)</failure > > > </testcase> > </testsuite> > </testsuites> > Where am I screwing up?? > > regards, > vivek > > __________________________________ > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard > http://antispam.yahoo.com/whatsnewfree > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
