Welcome to the JavaRanch, Dave!
DNS is like a telephone book. You look up a name, it returns a number.
The actual business of running communications over a tcp/ip network (internet OR intranet) is done strictly via IP address. The IP address is that gets a particular message to a particular machine. How you obtain that IP address, whether it's via DNS, a "hosts" file, hand-coded, or any of several other popular lookup mechanisms, is immaterial.
So when you get a "404" error, that simply means that your address has been routed to a server that could accept the request, but could not resolve the resource path. Possible causes include:
1. It's the wrong machine
2. It's the wrong server within the machine (NOTE: DNS does not resolve port numbers, only IP addresses. So if you ask for HTTP and don't supply a port number override, it goes to port 80). Server selection is based on port number, so if Apache httpd is on port 80 and Tomcat is on port 8080, failure to provide the "8080" will result in the request being routed to Apache httpd.
3. The server cannot decode the URL properly. For example, a Tomcat server can run multiple webapps, each with its own unique context path component of the URL. Wrong context path sends the URL to the wrong webapp.
4. The webapp cannot decode the URL properly. Tomcat will further break down a URL so that after it knows which webapp to route a URL to, it can then select which servlet/JSP to route the URL request to. If nothing resolves, Tomcat returns a "404" page. Also, a
servlet or
JSP can itself respond with a "404" if that's what it was programmed to to for input it doesn't know how to handle.
Normally you do not configure domain name addresses in tomcat's server.xml file. You would only typically do this when serving multiple virtual hosts. For a single virtual host, the default "Catalina localhost" is sufficient.