This problem basically occurs when you've different java versions for compiling the source code and for starting the Tomcat server.
Checks you've to do:
1. Java version of your IDE with what you compile the source code
2. Java version used by Tomcat
If the above mismatches, you'll face the error "SEVERE: Error filterStart" during the Tomcat server start and your web application will not be deployed.
Static Web / HTTP server: It is responsible for handling HTTP requests and sending back static files as HTTP responses
Examples: Apache, lighttpd, nginx, Microsoft IIS, etc.
Servlet container: It handles HTTP requests but also add layers to process those requests, wrap them around Java objects that implement well defined interfaces and implement the servlet container architecture so that a java developer can easily use the API to respond to the requests, manage sessions, cookies, receive GET & POST params, and many more.
Examples: Apache Tomcat, etc.
Application server: It's more than the web server and servlet container. You can find lot of information here
Examples: JBoss, WebLogic, WebSphere, etc.
I was trying to set the connection pooling on Tomcat 5.0.x using normal way, but it was giving the error while connecting to the oracle database. One of my coleague suggested the following way, & it worked.
Added following entry to the server.xml present in the conf directory:

I came across one of the question in one of the Java forum on ITTOOLBOX which was like this:
Can we run more than one instance of the Tomcat server on the same machine?
I was trying this from two days, and finally I was successful in starting three Tomcat instances on the same machine with different port numbers.
I followed the following steps to do the same:
a. Made three different folders of Tomcat directory.
b. Made changes in the environment variables as CATALINA_HOME1, CATALINA_HOME2, and CATALINA_HOME3.
c. Then I reflected the above changes in the "startup.bat", "shutdown.bat" and "catalina.bat" batch files in each Tomcat "bin" folder accordingly.
d. Then I changed the default port numbers 8005, 8080, and 8009 in server.xml & server-minimal.xml files of second and third Tomcat directories.
e. Now first server was running at port 8080, second one at 8090, and the third one at 8095.
Conclusion:
We can either have the instances running on the same machine (different ports), different machines (same ports) or different machines (different ports).
_________________________________________________________________________________________________________________
"Look at the sky. We are not alone. The whole Universe is friendly to us and conspires only to give the best to those who dream and work."
- Dr. A P J Abdul Kalam
_________________________________________________________________________________________________________________