Bryan, How do you run your tests? Ant, with your IDE, ..? I run my tests with an Ant task and most of the times with the utility in IntelliJ. I suggest you try a simple test with a simple action like:
<action-mappings> <!-- .. Hello action test .. --> <action path="/hello" forward="/hello.jsp"/> and a simple test just checking in the endXXX() that you have got the hello.jsp. Check your web.xml. You must have entries like: <!-- Cactus Filter --> <filter> <filter-name>FilterRedirector</filter-name> <filter-class>org.apache.cactus.server.FilterTestRedirector</filter-class> </filter> <filter-mapping> <filter-name>FilterRedirector</filter-name> <url-pattern>/FilterRedirector</url-pattern> </filter-mapping> <!-- Cactus Servlets --> <servlet> <servlet-name>ServletTestRunner</servlet-name> <servlet-class>org.apache.cactus.server.runner.ServletTestRunner</servlet-cl ass> <load-on-startup>3</load-on-startup> </servlet> <servlet> <servlet-name>ServletRedirector</servlet-name> <servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class > <load-on-startup>2</load-on-startup> </servlet> <!-- Cactus Jsps --> <servlet> <servlet-name>JspRedirector</servlet-name> <jsp-file>/jspRedirector.jsp</jsp-file> </servlet> <!-- ...................... SERVLET MAPPING .........................--> <!-- Cactus servlet mapping --> <servlet-mapping> <servlet-name>ServletTestRunner</servlet-name> <url-pattern>/ServletTestRunner</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>ServletRedirector</servlet-name> <url-pattern>/ServletRedirector</url-pattern> </servlet-mapping> <!--Cactus jsp mapping--> <servlet-mapping> <servlet-name>JspRedirector</servlet-name> <url-pattern>/JspRedirector</url-pattern> </servlet-mapping> <!--My servlet mapping--> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> I hope this helps. Regards, Pedro -----Mensaje original----- De: bryan hansen [mailto:[EMAIL PROTECTED] Enviado el: miercoles, 16 de marzo de 2005 21:29 Para: Cactus Users List Asunto: RE: Cactus test and Struts Sorry Pedro, I looked a little closer and noticed that you had it setup that way. I have modified my test case to match yours and I still get a 404 error?!? protected void setUp() throws Exception { dispatcher = request.getRequestDispatcher("/lease/leaseSummary.do"); } public void testAction() throws Exception { dispatcher.forward(request, response); System.out.println("\n\n\n\n\n\n WE HAVE FINISHED THE TEST \n\n\n\n\n\n"); assertTrue(true); } [cactus] 12:18:45,165 DEBUG HttpClientConnectionHelper: >connect = [org.apache.commons.httpclient.util.HttpURLConnection:http://localhost:8080/ gpm-cactus/ServletRedirector?Cactus_TestMethod=testAction&Cactus_TestClass=o rg.lds.ics.pfd.fmat.lease.action.TestLeaseSummaryAction&Cactus_AutomaticSess ion=true&Cactus_Service=CALL_TEST] [cactus] 12:18:45,185 DEBUG AutoReadHttpURLConnection: Original connection = org.apache.commons.httpclient.util.HttpURLConnection:http://localhost:8080/g pm-cactus/ServletRedirector?Cactus_TestMethod=testAction&Cactus_TestClass=or g.lds.ics.pfd.fmat.lease.action.TestLeaseSummaryAction&Cactus_AutomaticSessi on=true&Cactus_Service=CALL_TEST [cactus] 12:18:45,185 DEBUG HttpURLConnection: enter HttpURLConnection.getInputStream() [cactus] 12:18:45,185 DEBUG HttpURLConnection: enter HttpURLConnection.getHeaderField(String) [cactus] 12:18:45,185 DEBUG AutoReadHttpURLConnection: Content-Length : [-1] [cactus] 12:18:45,235 DEBUG HttpURLConnection: enter HttpURLConnection.getHeaderField(String) [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << "[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << " <HTML>[\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << " <HEAD> [\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << " [\r][\n]" [cactus] 12:18:45,235 DEBUG wire: << " <LINK rel="stylesheet" type="text/css" href="/gpm-cactus/css/fmat.css;jsessionid=1B77BABBBBB9945D098E8AD673E38934"> [\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " <TITLE>FMAT - 404 Error</TITLE>[\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " </HEAD>[\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " <BODY class="bodyMain">[\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " <TABLE border="0" width="100%" cellspacing="0">[\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " <TR>[\r][\n]" [cactus] 12:18:45,255 DEBUG wire: << " <TD>[\r][\n]" --- Pedro Nevado <[EMAIL PROTECTED]> wrote: > Bryan, > > I get the reference in the setUp() method, not in > the begin() or beginXXX(), > so you can use the request object. It is in my code. > Regards, > Pedro > > -----Mensaje original----- > De: bryan hansen [mailto:[EMAIL PROTECTED] > Enviado el: miercoles, 16 de marzo de 2005 19:00 > Para: Cactus Users List > Asunto: RE: Cactus test and Struts > > > Pedro how are you getting a reference to the > RequestDispatcher? The WebRequest from Cactus > doesn't > make it available? > > Bryan > > --- Pedro Nevado <[EMAIL PROTECTED]> wrote: > > I use Cactus without StrutsTestCase to test my > > servlet 2.4 applications. > > > > Here it is some code: > > > > public class EmailEnvioActionTest extends > > ServletTestCase { > > > > private static RequestDispatcher dispatcher; > > > > protected void setUp() throws DaoException { > > dispatcher = > > > request.getRequestDispatcher("/email_VistaPrevia_Submit.do"); > > assert dispatcher != null : "dispatcher not > > null"; > > } > > > > public void testCaso_1() throws IOException, > > ServletException { > > dispatcher.forward(request, response); > > } > > > > I do not instantiate in my test an ActionServlet > if > > I want to test an > > Action. I use a dispatcher to put in place all the > > Struts machinery, and I > > focus the test on the request parameters and > > attributes, and the session > > attributes, that I send and what to do with them. > > > > I hope this helps. > > Regards. > > Pedro > > > > -----Mensaje original----- > > De: Nicolas Chalumeau > > [mailto:[EMAIL PROTECTED] > > Enviado el: miircoles, 16 de marzo de 2005 10:19 > > Para: Cactus Users List > > Asunto: Re: Cactus test and Struts > > > > > > Hi bryan > > > > I will not answer your question as I don't know (I > > didn't search ;) so ...) > > > > I personnally use CactusStrutsTestCase to test my > > Action > > (http://strutstestcase.sourceforge.net/). It > include > > all the > > mechanisme to load the struts-config, execute > plugin > > ... Maybe it > > could solve some of your problems. > > > > If you choose this solution the StrutsTestCase > > mailling should be the > > best place to ask in that case. > > > > Nicolas, > > > > On Tue, 15 Mar 2005 13:41:20 -0800 (PST), bryan > > hansen <[EMAIL PROTECTED]> > > wrote: > > > We are using cactus to test some struts actions. > I > > am > > > getting an error and not sure what the cause is. > > BTW > > > if somebody has found a better way to do this, I > > am > > > open for suggestions. > > > > > > We simply add the URI that we want to request > and > > the > > > appropriate paramaters in the begin method: > > > > > > private void beginAction(WebRequest request) { > > > request.addHeader("URI", > > "/lease/leaseSummary.do"); > > > request.addParameter("command", "viewLease"); > > > request.addParameter("itemId","1301"); > > > request.addParameter("structureId", "1111"); > > > } > > > > > > We then access the action servlet: > > > > > > public void testAction() throws Exception { > > > ActionServlet servlet = new ActionServlet(); > > > servlet.init(config); > > > UserSessionValues usv = new > UserSessionValues(); > > > session.setAttribute("userInfo", usv); > > > > > > servlet.doPost(request, response); > > > > > > UserSessionValues usvSession = > > (UserSessionValues) > > > request.getSession().getAttribute("userInfo"); > > > > > > assertNotNull(usvSession); > > > > > > } > > > > > > The output from this test results in a bunch of > > debug > > > code, but ultimately this: > > > > > > [cactus] 14:09:54,114 DEBUG wire: << > "HTTP/1.1 > > 404 > > > Invalid path /ServletRedirector was > > requested[\r][\n]" > > > > > > I get the same error message on Tomcat and > JBoss. > > > > > > Any ideas? > > > > > > Thanks, > > > > > > Bryan > > > > > > > __________________________________________________ > > > Do You Yahoo!? > > > Tired of spam? Yahoo! Mail has the best spam > > protection around > > > http://mail.yahoo.com > > > > > > > > > --------------------------------------------------------------------- > > > 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] > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: > > [EMAIL PROTECTED] > > For additional commands, e-mail: > > [EMAIL PROTECTED] > > > > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Sports - Sign up for Fantasy Baseball. > http://baseball.fantasysports.yahoo.com/ > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > > === message truncated === __________________________________ Do you Yahoo!? Make Yahoo! your home page http://www.yahoo.com/r/hs --------------------------------------------------------------------- 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]