Question

Tomcat Error 404

Asked by: Bohumil

I would like to have Tomcat (4.1.12) bring up a specific custom-page whenever a user tries to access a URL that does not exist on the server. Right now I just get the standard error 404 page. Is this possible?

If it IS possible, could I set it for the entire server, rather than for each "service"/site?

More specifically: I am using Tomcat on one server to serve up multiple domains and websites. Whenever a user types a URL that points to one of these the domains (or sub-domains) but requests a page that does not exist in that website, I simply want him to be redirected to the home page which is always the default page in the root directory on the server.

So if I type www.somedomain.com/support/page1.jsp, and that page does not exist, I want to automatically redirect to:
www.somedomain.com

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2003-06-19 at 23:44:07ID20654602
Tags

tomcat

,

404

,

error

Topic

Application Servers

Participating Experts
5
Points
250
Comments
9

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. Apache default page with tomcat
    Here is my problem scenario: 1) I have Apache 2.0.43 installed 2) Tomcat 4.xx 3) MySQl version 4 (but not relevant) so here is the problem, my default page is a jsp called login.jsp and correspondingly located in the tomcat folders. If I enter the url a www.myrms.rms, I alw...
  2. Tomcat 404 redirect problem
    I created a "Failure.jsp" page and placed it in my webapp directory. I then added the error redirection code displayed below to my /tomcat_home/conf/web.xml file. <welcome-file-list> <welcome-file>index.html</welcome-file> <...

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: fargoPosted on 2003-06-20 at 07:10:12ID: 8766639

Hii,

The best way is to add the following in the web.xml for the context.

  <error-page>
      <error-code>404</error-code>
      <location>/index.html</location>
  </error-page>

U can refer the tomcat 4 documentation for more details on this.

Hope this helps
regards
fargo

 

by: BohumilPosted on 2003-06-20 at 14:26:47ID: 8769796

Thanks, that was just what I was looking for (somehow I overlooked this in the documentation..)

Just as an additional note:
When I set this up, it initially created a circular reference that kept the browser forwarding constantly between two pages:

my "index.jsp" itself does a forwarding to another page (after checking the version of the browser). Now, the funny thing is that the error page defined in Tomcat comes up, but the URL is still the one of the original page that the user typed in. So the forward tries to forward (which uses a relative link) to another page that does not exist, which calls up the error page (index.jsp) again, which forwards to the non-existent page, etc.

So the solution was to create a page called Error404.jsp in the root of every site and use that as the error page. This page would do a forward to "/index.jsp" as an ABSOLUTE link, so that the URL actually gets replaced.

 

by: fargoPosted on 2003-06-23 at 03:09:52ID: 8780283

Hii,

Thanks and glad it helps. Good that u explained ur experiences well.
regards
fargo

 

by: ferdi_from_austriaPosted on 2003-07-01 at 13:31:32ID: 8835787

Hi,

the internet explorer (5.0 and newer I think) will create its own short error message when statuscode 404 is received.
This feature is default on.
To ignore this, i call "response.setStatus(200);" in my error servlet (I use a servlet) to change the statuscode from 404 to 200.


ferdi

 

by: speculatrixPosted on 2004-04-15 at 08:14:51ID: 10833859

Note that the error document is relative to the webapp path...

so if your webapp has a example.com/webapp/404.jsp page, you don't put /webapp/404.jsp into the web.xml instead you just put /404.jsp

I found this out when I did
"telnet localhost 80" and it told me the actual doco it was returning... when I had set up /index2.html as the error doc.

GET /webapp/asdasd HTTP/1.0
 
HTTP/1.1 404 /webapp/index2.html
Date: Thu, 15 Apr 2004 15:05:04 GMT
Server: Apache/1.3.28 (Unix) PHP/4.3.4 mod_jk2/2.0.2 mod_ssl/2.8.15 OpenSSL/0.9.7c
Connection: close
Content-Type: text/plain
 
Connection closed by foreign host.

 

by: atomicfallsPosted on 2004-06-22 at 00:06:00ID: 11366717

I created a "Failure.jsp" page and placed it in my webapp directory. I then added the error redirection code displayed below to my /tomcat_home/conf/web.xml file.

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

<error-page>
  <error-code>404</error-code>
  <location>/Failure.jsp</location>
</error-page>

</web-app>

When I restart Tomcat and try to access my webapp I get a standard tomcat 404 response, regardless of whether the page I'm trying to access actually exists or not. If remove the <error-page> tags from the web.xml and restart Tomcat everything works fine. What am I missing?  It may be relevant that I'm using the invoker servlet in my configuration. I'm running tomcat in stand alone. Also, I've tried this on both Tomcat 4 and 5 versions with the same result. I also get the same result if I create a simple web.xml file containing the <error-page> tags and place it within my webapps WEB-INF directory. Ideally I would like to redirect all 404 errors to an offsite page as in   <location>http://mysite.com/error.html</location>

Any help is greatly appreciated.

- Rich

 

by: speculatrixPosted on 2004-06-22 at 02:26:24ID: 11367370

atomicfalls, try putting the codes for redirecting 404 into the webapps/MYWEBAPPS/web-info/web.xml file.

 

by: atomicfallsPosted on 2004-06-22 at 23:36:58ID: 11376645

speculatrix,

The only web.xml file I have resides in /TOMAT_HOME/conf/web.xml. It is the standard file installed with tomcat and the only modifications I have made to it are the addition of <error-page> tags. I have tried putting a web.xml file containing just the 404 codes in webapps/MYWEBAPPS/WEB-INF/web.xml but the result was the same. When I add the <error-page> tags to either web.xml file all requests to the server return a standard tomcat 404 error response indicating that index.jsp was not found on the server. Removing the <error-page> tags and restarting tomcat solves the problem.

 

by: mark_christiansenPosted on 2004-09-28 at 09:55:16ID: 12171499

I found that if you want to define a custom error page for all requests you have to define a root webapp in your server.xml file like:

<!-- Tomcat Root Context -->
<Context path="" docBase="MYAPP" debug="0"/>

Then the custom error page for "MYAPP" will be used for requests to contexts that don't exist on the server.

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...