MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Revision 15 as of 2014-07-26 22:15:42
  • Java
  • Tomcat

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 for WAR file

Adapted from http://stackoverflow.com/questions/372686/how-can-i-specify-system-properties-in-tomcat-configuration-on-startup

   1 <env-entry>
   2     <env-entry-name>SMTP_PASSWORD</env-entry-name>
   3     <env-entry-type>java.lang.String</env-entry-type>
   4     <env-entry-value>abc123ftw</env-entry-value>
   5 </env-entry>

Get values in code:

   1 // Obtain our environment naming context
   2 Context initCtx = new InitialContext();
   3 Context envCtx = (Context) initCtx.lookup("java:comp/env");
   4 
   5 // Look up our data source
   6 String s = (String)envCtx.lookup("SMTP_PASSWORD");

Change HTTP from port 8080 to port 8081 and AJP from 8009 to 8010

Edit file conf/server.xml

Change the HTTP Connector from 8080 to 8081. Change AJP1.3 connector from 8009 to 8010.

   1     <Connector port="8081" protocol="HTTP/1.1"
   2                connectionTimeout="20000"
   3                redirectPort="8443" />
   4 
   5     <!-- Define an AJP 1.3 Connector on port 8009 -->
   6     <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

Copy JBoss5 client libs to Tomcat

   1 cd /opt/jboss-5.1.0.GA/client
   2 cp commons-logging.jar /opt/apache-tomcat-7.0.53/lib
   3 cp concurrent.jar  /opt/apache-tomcat-7.0.53/lib
   4 cp ejb3-persistence.jar hibernate-annotations.jar  /opt/apache-tomcat-7.0.53/lib
   5 cp jboss-aop-client.jar  /opt/apache-tomcat-7.0.53/lib
   6 cp jboss-appclient.jar  /opt/apache-tomcat-7.0.53/lib
   7 cp jboss-aspect-jdk50-client.jar  /opt/apache-tomcat-7.0.53/lib
   8 cp jboss-client.jar  /opt/apache-tomcat-7.0.53/lib
   9 cp jboss-common-core.jar  /opt/apache-tomcat-7.0.53/lib
  10 cp jboss-deployers-client-spi.jar  /opt/apache-tomcat-7.0.53/lib
  11 cp jboss-deployers-client.jar  /opt/apache-tomcat-7.0.53/lib
  12 cp jboss-deployers-core-spi.jar  /opt/apache-tomcat-7.0.53/lib
  13 cp jboss-deployers-core.jar  /opt/apache-tomcat-7.0.53/lib
  14 cp jboss-deployment.jar  /opt/apache-tomcat-7.0.53/lib
  15 cp jboss-ejb3-common-client.jar  /opt/apache-tomcat-7.0.53/lib
  16 cp jboss-ejb3-core-client.jar  /opt/apache-tomcat-7.0.53/lib
  17 cp jboss-ejb3-ext-api.jar  /opt/apache-tomcat-7.0.53/lib
  18 cp jboss-ejb3-proxy-clustered-client.jar  /opt/apache-tomcat-7.0.53/lib
  19 cp jboss-ejb3-proxy-impl-client.jar  /opt/apache-tomcat-7.0.53/lib
  20 cp jboss-ejb3-proxy-spi-client.jar  /opt/apache-tomcat-7.0.53/lib
  21 cp jboss-ejb3-security-client.jar  /opt/apache-tomcat-7.0.53/lib
  22 cp jboss-ha-client.jar  /opt/apache-tomcat-7.0.53/lib
  23 cp jboss-ha-legacy-client.jar  /opt/apache-tomcat-7.0.53/lib
  24 cp jboss-iiop-client.jar  /opt/apache-tomcat-7.0.53/lib
  25 cp jboss-integration.jar  /opt/apache-tomcat-7.0.53/lib
  26 cp jboss-j2se.jar  /opt/apache-tomcat-7.0.53/lib
  27 cp jboss-javaee.jar  /opt/apache-tomcat-7.0.53/lib
  28 cp jboss-jsr77-client.jar  /opt/apache-tomcat-7.0.53/lib
  29 cp jboss-logging-jdk.jar  /opt/apache-tomcat-7.0.53/lib
  30 cp jboss-logging-log4j.jar  /opt/apache-tomcat-7.0.53/lib
  31 cp jboss-logging-spi.jar  /opt/apache-tomcat-7.0.53/lib
  32 cp jboss-main-client.jar  /opt/apache-tomcat-7.0.53/lib
  33 cp jboss-mdr.jar  /opt/apache-tomcat-7.0.53/lib
  34 cp jboss-messaging-client.jar  /opt/apache-tomcat-7.0.53/lib
  35 cp jboss-remoting.jar  /opt/apache-tomcat-7.0.53/lib
  36 cp jboss-security-spi.jar  /opt/apache-tomcat-7.0.53/lib
  37 cp jboss-serialization.jar  /opt/apache-tomcat-7.0.53/lib
  38 cp jboss-srp-client.jar  /opt/apache-tomcat-7.0.53/lib
  39 cp jboss-system-client.jar  /opt/apache-tomcat-7.0.53/lib
  40 cp jboss-system-jmx-client.jar  /opt/apache-tomcat-7.0.53/lib
  41 cp jbosscx-client.jar  /opt/apache-tomcat-7.0.53/lib
  42 cp jbossjts-integration.jar  /opt/apache-tomcat-7.0.53/lib
  43 cp jbossjts.jar  /opt/apache-tomcat-7.0.53/lib
  44 cp jbosssx-as-client.jar  /opt/apache-tomcat-7.0.53/lib
  45 cp jbosssx-client.jar  /opt/apache-tomcat-7.0.53/lib
  46 cp jmx-client.jar  /opt/apache-tomcat-7.0.53/lib
  47 cp jmx-invoker-adaptor-client.jar  /opt/apache-tomcat-7.0.53/lib
  48 cp jnp-client.jar  /opt/apache-tomcat-7.0.53/lib
  49 cp slf4j-api.jar  /opt/apache-tomcat-7.0.53/lib
  50 cp slf4j-jboss-logging.jar  /opt/apache-tomcat-7.0.53/lib
  51 cp xmlsec.jar /opt/apache-tomcat-7.0.53/lib

Windows client copy

cd C:\appsvr\jboss-5.1.0.GA\client

copy commons-logging.jar C:\appsvr\apache-tomcat-7.0.29\lib
copy concurrent.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy ejb3-persistence.jar hibernate-annotations.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-aop-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-appclient.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-aspect-jdk50-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-common-core.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-deployers-client-spi.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-deployers-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-deployers-core-spi.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-deployers-core.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-deployment.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-common-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-core-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-ext-api.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-proxy-clustered-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-proxy-impl-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-proxy-spi-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ejb3-security-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ha-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-ha-legacy-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-iiop-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-integration.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-j2se.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-javaee.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-jsr77-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-logging-jdk.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-logging-log4j.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-logging-spi.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-main-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-mdr.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-messaging-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-remoting.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-security-spi.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-serialization.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-srp-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-system-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jboss-system-jmx-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jbosscx-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jbossjts-integration.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jbossjts.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jbosssx-as-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jbosssx-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jmx-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jmx-invoker-adaptor-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy jnp-client.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy slf4j-api.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy slf4j-jboss-logging.jar  C:\appsvr\apache-tomcat-7.0.29\lib
copy xmlsec.jar C:\appsvr\apache-tomcat-7.0.29\lib

Windows remote debug

https://confluence.sakaiproject.org/display/BOOT/Setting+Up+Tomcat+For+Remote+Debugging comment

C:\tomcat\bin> tomcat5w //ES//Tomcat5
-Xdebug
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

Listens on port 5050:

Cmd as admin
<...>\apache-tomcat-7.0.29\bin>Tomcat7w.exe //ES//Tomcat7
Java tab
Java options:
-Xdebug 
-Xrunjdwp:transport=dt_socket,address=5050,server=y,suspend=n

Linux remote debug

  • bin/catalina.sh jpda start
  • bin/catalina.sh jpda stop
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01