= Tomcat = Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer Pages technologies. == Installation on Slackware == * cd ~/Downloads * wget http://mirrors.fe.up.pt/pub/apache/tomcat/tomcat-7/v7.0.53/bin/apache-tomcat-7.0.53.tar.gz * su * cp apache-tomcat-7.0.53.tar.gz /opt * cd /opt * tar xvzf apache-tomcat-7.0.53.tar.gz * chown vitor * -R * chgrp users * -R * exit == Start Tomcat == /opt/apache-tomcat-7.0.53/bin/ ./startup.sh http://localhost:8080/ == Add admin user == * cd /opt/apache-tomcat-7.0.53/conf Edit tomcat-users.xml {{{ <role rolename="admin"/> <role rolename="manager"/> <role rolename="manager-gui"/> <user username="admin" password="12345678" roles="admin,manager,manager-gui"/ }}} * ./shutdown.sh * ./startup.sh == WebApps location == * /opt/apache-tomcat-7.0.53/webapps A WAR file can be copied or exploded in the webapps folder. == Sample App == Download http://localhost:8080/docs/appdev/sample/sample.war and deploy in the webapps folder. After the deploy the WAR file is exploded. == Configuration values in web.xml == Adapted from http://stackoverflow.com/questions/372686/how-can-i-specify-system-properties-in-tomcat-configuration-on-startup {{{#!highlight xml <env-entry> <env-entry-name>SMTP_PASSWORD</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>abc123ftw</env-entry-value> </env-entry> }}} Get values in code {{{#!highlight java // Obtain our environment naming context Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); // Look up our data source String s = (String)envCtx.lookup("SMTP_PASSWORD"); }}}