struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pauli Savolainen" <savolainen.pa...@gmail.com>
Subject Re: There is no Action mapped for namespace / and action name ...
Date Tue, 29 Jul 2008 09:08:25 GMT
Hi,

I am having exactly the same problem. I was using Struts 2.1.1,
switched to struts 2.1.2 (including the restful and codebehind
plugins) and started to get this 'no action found' error. I am quite
confident that I did not do anything that should've resulted in this.
Of course I cannot be 100% sure, because I did goof around with my
code a bit, but I checked and rechecked and rerechecked everthing
twice and couldn't find a reason for this behaviour.

John's web.xml and the stacktrace are identical to mine. I don't
declare any namespaces in my struts.xml packages nor in the login form
from which I try to invoke the login action <s:form
action="/login/execute" method="post">. (Also tried with an
exclamation mark i.e. login!execute) I have a LoginAction.java with an
execute method in the pacakge defined in the web.xml's actionPackages
init parameter. At least this declaration used to send the control to
the LoginAction's execute method. Doesn't do anymore.

I am using the struts 2.1.2 tiles plugin as well. On my index.jsp I
include a tiles main layout which in turn includes sub-layouts (such
as the login form). I don't know if this has anything got to do with
the problem I'm having.

So, is a result of something I did wrong or could it be something else?

Thank you

Pauli Savolainen

2008/7/28 Paul Benedict <pbenedict@apache.org>:
> What's the correct way of writing a good 404 or action not found page? Does
> s2 have something like a fallback action if nothing can be found?
>
> Paul
>
> On Mon, Jul 28, 2008 at 4:04 PM, Dave Newton <newton.dave@yahoo.com> wrote:
>
>> Hmm, I wonder if it was the same issue I was having with 2.1.3 a week or so
>> ago that I haven't had time to re-visit--so it actually could be the web.xml
>> (specifically the dispatcher being used) and I may have put my foot in my
>> mouth (again).
>>
>> Somebody followed up saying the original FilterDispatcher worked, though,
>> so maybe not. Hrm.
>>
>> Dave
>>
>> --- On Mon, 7/28/08, John Moose <jgmoose@gmail.com> wrote:
>> > and I probably should have included this as well:
>> >
>> > Struts Problem Report
>> >
>> > Struts has detected an unhandled exception:
>> >   *Messages*:
>> > There is no Action mapped for namespace / and action name
>> > dashbd.
>> >  ------------------------------
>> > Stacktraces *There is no Action mapped for namespace / and
>> > action name
>> > dashbd. - [unknown location]*
>> >
>> >
>> >
>> com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:177)
>> >
>> >
>> com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:59)
>> >
>> >
>> org.apache.struts2.rest.RestActionProxyFactory.createActionProxy(RestActionProxyFactory.java:40)
>> >
>> >
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:439)
>> >
>> >
>> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>> >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
>> >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
>> >
>> >
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
>> >
>> >
>> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>> >
>> >
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>> >
>> >
>> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
>> >
>> >
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
>> >
>> >
>> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>> >
>> >
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>> >
>> >
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>> >
>> >
>> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>> >
>> >
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
>> >
>> >
>> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>> >
>> >
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>> >
>> >
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>> >
>> >
>> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>> >
>> >
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>> >
>> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>> >
>> > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>> >
>> >
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
>> >
>> >
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
>> >
>> >
>> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
>> >
>> >
>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>> >     java.lang.Thread.run(Thread.java:595)
>> >
>> >
>> >
>> > On Mon, Jul 28, 2008 at 4:39 PM, John Moose
>> > <jgmoose@gmail.com> wrote:
>> >
>> > > Hi Dave,
>> > >
>> > > I have the following snippet of DashbdController class
>> > that I am expecting
>> > > to hit with the following URL:
>> > >
>> > > http:/localhost:8080/Dashbd
>> > >
>> > > <---SNIPPET
>> > >
>> > > package com.myeclipse.ozone;
>> > >
>> > > import java.util.Collection;
>> > >
>> > > import com.myeclipse.hibernate.*;
>> > >
>> > > import org.hibernate.HibernateException;
>> > > import org.hibernate.Session;
>> > > import org.hibernate.cfg.Configuration;
>> > >
>> > > import org.apache.struts2.config.Result;
>> > > import org.apache.struts2.config.Results;
>> > > import
>> > org.apache.struts2.dispatcher.ServletActionRedirectResult;
>> > > import org.apache.struts2.rest.DefaultHttpHeaders;
>> > > import org.apache.struts2.rest.HttpHeaders;
>> > >
>> > > import com.opensymphony.xwork2.ModelDriven;
>> > > import com.opensymphony.xwork2.Validateable;
>> > > import com.opensymphony.xwork2.ValidationAwareSupport;
>> > >
>> > >
>> > > @Results({
>> > >     @Result(name="success",
>> > type=ServletActionRedirectResult.class,
>> > > value="dashbd")
>> > > })
>> > >
>> > > public class DashbdController extends
>> > ValidationAwareSupport implements
>> > > ModelDriven<Object>, Validateable{
>> > >
>> > >    //private static Gadget    transientGadget = new
>> > Gadget();
>> > >
>> > >     //String id;
>> > >     int id;
>> > >
>> > >     private static int    dashboardId;
>> > >
>> > >     private Collection<Dashbd>
>> > dashboardList;
>> > >     private Collection<Dashbd>     model;
>> > >     private Collection<DashbdType>
>> > dashboardTypeList;
>> > >
>> > >     private DashbdService dashboardService = new
>> > DashbdService();  // where
>> > > the DAOs live
>> > >
>> > >
>> > >     /*
>> > >
>> >
>> ****************************************************************************************
>> > >      *             DASHBOARDS
>> > >      */
>> > >
>> > >     //
>> > >     // GET .../dashbd                 get all
>> > dashboards in table
>> > >     //
>> > >     public HttpHeaders index() {
>> > >         dashboardList = dashboardService.getAll();
>> > >         return new
>> > DefaultHttpHeaders("index")   // dashbd-index.jsp
>> > >             .disableCaching();
>> > >     }
>> > >
>> > >
>> > > and etc. ....
>> > >
>> > > ...END SNIPPET >
>> > >
>> > > There are more methods in this calss of course, but
>> > all I'm trying to do
>> > > initially is hit the index() action with the URL above
>> > ?!?
>> > >
>> > > the index.jsp is really simple:
>> > >
>> > > <% response.sendRedirect("dashbd"); %>
>> > >
>> > >
>> > > this same scheme works perfectly with another RESTful
>> > app service and fir
>> > > the life of me, I can't find any
>> > >
>> > >
>> > >
>> > > On Mon, Jul 28, 2008 at 4:17 PM, Dave Newton
>> > <newton.dave@yahoo.com>wrote:
>> > >
>> > >> The web.xml doesn't have anything to do with
>> > the error message; it thinks
>> > >> there isn't an action configured at the URL
>> > you're requesting.
>> > >>
>> > >> Impossible to help without more information.
>> > >>
>> > >> Dave
>> > >>
>> > >> --- On Mon, 7/28/08, John Moose
>> > <jgmoose@gmail.com> wrote:
>> > >>
>> > >> > From: John Moose <jgmoose@gmail.com>
>> > >> > Subject: There is no Action mapped for
>> > namespace / and action name ...
>> > >> > To: "Struts Users Mailing List"
>> > <user@struts.apache.org>
>> > >> > Date: Monday, July 28, 2008, 3:58 PM
>> > >> > I know what you're thinking... web.xml
>> > has no action
>> > >> > mapping, but it does!
>> > >> >
>> > >> >
>> > >> > <?xml version="1.0"
>> > >> > encoding="UTF-8"?>
>> > >> > <web-app version="2.5"
>> > >> >
>> > xmlns="http://java.sun.com/xml/ns/javaee"
>> > >> >
>> > >> >
>> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> > >> >
>> > >> >
>> > xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> > >> >
>> > >> >
>> > http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
>> > >> >
>> > >> >     <display-name>Struts 2 RESTful
>> > Ozone
>> > >> > Services</display-name>
>> > >> >
>> > >> >   <!-- Filters -->
>> > >> >       <filter>
>> > >> >
>> > <filter-name>action2</filter-name>
>> > >> >
>> > >> >
>> > >>
>> >
>> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
>> > >> >           <init-param>
>> > >> >
>> > >> >
>> > <param-name>actionPackages</param-name>
>> > >> >
>> > >> >
>> > <param-value>com.myeclipse.ozone</param-value>
>> > >> >           </init-param>
>> > >> >           <init-param>
>> > >> >
>> > >> >
>> > <param-name>struts.devMode</param-name>
>> > >> >
>> > <param-value>true</param-value>
>> > >> >           </init-param>
>> > >> >       </filter>
>> > >> >
>> > >> >       <filter-mapping>
>> > >> >
>> > <filter-name>action2</filter-name>
>> > >> >
>> > <url-pattern>/*</url-pattern>
>> > >> >       </filter-mapping>
>> > >> >
>> > >> >   <welcome-file-list>
>> > >> >
>> > <welcome-file>index.jsp</welcome-file>
>> > >> >   </welcome-file-list>
>> > >> > </web-app>
>> > >> >
>> > >> >
>> > >> >
>> > >> > This file works well with another Struts2.1.3
>> > app.  Can
>> > >> > someone help me
>> > >> > understand where to look for the cause of
>> > this???
>> > >> >
>> > >> > Thanks folks
>> > >>
>> > >>
>> > ---------------------------------------------------------------------
>> > >> To unsubscribe, e-mail:
>> > user-unsubscribe@struts.apache.org
>> > >> For additional commands, e-mail:
>> > user-help@struts.apache.org
>> > >>
>> > >>
>> > >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message