Menu

java.lang.NoSuchFieldError: config

Abhi
2008-08-08
2013-04-25
  • Abhi

    Abhi - 2008-08-08

    Hi,
    I am a newbie with StrutsTestCase and Cactus. When I am trying to test a simple login application, I am getting the following error. Pls help. Thanks in advance.

    Struts version used: 1.1
    Cactus version used: 1.8.0
    StrutsTestCase version used: strutstest200-1.0_2.3

    Test class code:

    public class TestLoginAction extends CactusStrutsTestCase {

        public TestLoginAction(String testName) {
            super(testName);
        }  

        public void testSuccessfulLogin() {
            setRequestPathInfo("/login");
            addRequestParameter("username", "admin");
            addRequestParameter("password", "admin");
            actionPerform();
            verifyForward("success");
            assertEquals("admin", (String) getSession().getAttribute("uname"));
            verifyNoActionErrors();
        }

        public static void main(String[] args) {
            junit.textui.TestRunner.run(TestLoginAction.class);
        }
    }

    Exception stacktrace:

    Time: 0.19
    There was 1 error:
    1) testSuccessfulLogin(strutstestcase.TestLoginAction)java.lang.NoSuchFieldError: config
            at servletunit.struts.CactusStrutsTestCase.setUp(CactusStrutsTestCase.java:91)
            at org.apache.cactus.internal.AbstractCactusTestCase.runBareServer(AbstractCactusTestCase.java:155)
            at org.apache.cactus.internal.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:120)
            at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody0(AbstractWebTestController.java:94)
            at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody1$advice(AbstractWebTestController.java:225)
            at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java:1)
            at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(ServletTestRedirector.java:102)
            at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(ServletTestRedirector.java:225)
            at org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java:1)
            at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletTestRedirector.java:73)
            at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(ServletTestRedirector.java:225)
            at org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java:1)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
            at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
            at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
            at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:380)
            at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
            at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)

    FAILURES!!!
    Tests run: 1,  Failures: 0,  Errors: 1

     
    • Abhi

      Abhi - 2008-08-09

      I have found the problem - incorrect Cactus version used.

       
      • Wyatt Tellis

        Wyatt Tellis - 2008-10-13

        Just ran into the same issue. Are there plans to support Cactus 1.8.1? I'd like to be able to use its new Maven 2 plugin. 

         
    • Dan Lipofsky

      Dan Lipofsky - 2008-12-12

      I had to patch StrutsTestCase to get it to work with Cactus 1.8.0.
      I haven't tired it with 1.8.1 yet but it may work.  Here is my
      patch (see bottom of page):
      http://danlipofsky.com/technical/cactus

       

Log in to post a comment.