Filip Hanik, Apache Tomcat committer and SpringSource engineer, noticed over the past few years that as Java and its servlet containers, like Apache Tomcat, have matured, it has become increasingly harder to get started with them today. For new engineers and developers, there simply is just more to learn. In a new series, started today Hanik starts a tutorial from the ground up on what to do to fast track your understanding of Apache Tomcat.
Starting with Installation here are a couple of the tips that Hanik shares:
- For your first time, always download your software from http://tomcat.apache.org and do not rely on an IDE or a third party packaging of Apache Tomcat. Understanding Tomcat by itself first will help you avoid complications when you try to create a plan for how you distribute, upgrade and maintain your software down the line. As your skill level matures, then you can leverage the best third party package for your needs.
- Start out with one of the platform neutral packages, as they will work on both Windows and Unix. For Unix systems you may have to set additional executable file permissions on the shell scripts. For Windows users, this will also avoid installing libraries to have Tomcat run as a service or modify how it handles network traffic. Both of these are recommended to avoid at first.
- For Windows users, do not use the GUI installer as it bypasses some important details that you need to learn at first.
- When installing, avoid using filepaths that have whitespaces. This will save you a lot of time troubleshooting later.
- A java program in itself, Tomcat needs a Java Virtual Machine to launch. You can get your JVM from either installing a Java Development Kit (JDK) and setting JAVA_HOME, or installing a Java Runtime Environment (JRE) and setting JRE_HOME. For beginners, its best to start with a JDK. For Windows users, to learn how to set JAVA_HOME, see wso2.org.
For more background and explanation on the selecting the right download and installation process, see the full article Understanding Apache Tomcat: Getting Started.