This week's book giveaways are in the Java EE and JavaScript forums.
We're giving away four copies each of The Java EE 7 Tutorial Volume 1 or Volume 2(winners choice) and jQuery UI in Action and have the authors on-line!
See this thread and this one for details.
The moose likes Struts and the fly likes 404 prob. Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of The Java EE 7 Tutorial Volume 1 or Volume 2 this week in the Java EE forum
or jQuery UI in Action in the JavaScript forum!
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "404 prob." Watch "404 prob." New topic
Author

404 prob.

Neeraj Vij
Ranch Hand

Joined: Nov 25, 2003
Posts: 315
Hi,
I am new to struts.

Please help me implement the 404 error page handling in struts.

(like we can specify in web.xml for error-code for servlets/jsp.)

Regards,
Neeraj.
Merrill Higginson
Ranch Hand

Joined: Feb 15, 2005
Posts: 4864
Since Struts is only a particular way of creating a J2EE web application, you can intercept the 404 error in exactly the same way that you would in any other J2EE web application. There is no difference for a Struts application.


Merrill
Consultant, Sima Solutions
Neeraj Vij
Ranch Hand

Joined: Nov 25, 2003
Posts: 315
Hello,

It is not reaching the error page in case of struts.
when I am testing it on a normal application. it reaching there.

I tried by using

<global-exceptions>
<exception key="errors.cancel" type="java.lang.Exception" path="/WEB-INF/jsp/error/ErrorPage.jsp"/>
</global-exceptions>

in my struts-config.xml file. still not working.


Regards,
Neeraj.
Mishra Anshu
Ranch Hand

Joined: Sep 16, 2003
Posts: 224
Try and see if global forward helps...

<global-forwards>
<forward name="error" path="/<your_context_root>/error.jsp"/>
</global-forwards>


"Ignorance is bliss"
Merrill Higginson
Ranch Hand

Joined: Feb 15, 2005
Posts: 4864
I added the following to the web.xml file for my Struts application:



When I submit the url

www.mycompany.com/myApp/nonExistentPage.jsp

The error.jsp page is displayed.

There is nothing unique to Struts about this. It's how you would redirect an HTTP error in any J2EE web application using servlet 2.2 and above.
[ March 09, 2006: Message edited by: Merrill Higginson ]
Merrill Higginson
Ranch Hand

Joined: Feb 15, 2005
Posts: 4864
This is a little more complicated than I originally thought. While the method used in my previous post will work if the URL is xyz.jsp, or xyz.htm, it will not work for xyz.do if xyz is not a valid action path.

The reason for this is that I've specified in my web.xml file that the Struts action servlet is to get called for any URI ending in .do. So, for any requests ending in .do, the struts ActionServlet takes over, and when it doesn't find an Action path, it sends a 404 error back to the browser.

If you want to change this behavior you will have to override the processMapping() method in the org.apache.struts.action.RequestProcessor class.
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: 404 prob.