[Slackbuilds-users] Some issues with Apache Tomcat
    Antonio Hernández Blas 
    hba.nihilismus at gmail.com
       
    Tue Jan 20 00:50:10 UTC 2015
    
    
  
Hi, i'm trying to understand how it is integrated Apache Tomcat into
Slackware using the available SlackBuild at SBo.
First some facts:
*  $CATALINA_HOME and $CATALINA_BASE are **global** environment variables.
*  $CATALINA_HOME is set to /usr/share/tomcat
*  $CATALINA_BASE is set to /var/lib/tomcat
*  Inside $CATALINA_HOME:
   *  bin/
   *  lib/
*  Inside $CATALINA_BASE:
   *  bin -> /usr/share/tomcat/bin/
   *  conf -> /etc/tomcat/
   *  logs -> /var/log/tomcat/
   *  temp -> /var/tmp/tomcat/
   *  webapps/
   *  work -> /var/run/tomcat/
*  /etc/rc.d/rc.tomcat has hardcoded values for $PIDFILE, $LOGFILE and
$USER, and expects the environment variable $CATALINA_BASE has been already
defined (which it is since it is a **global** environment variable).
Now the questions/issues:
*  Trying to integrate $CATALINA_BASE into Eclipse does not work, i get the
message:
   "Unknown version of Tomcat was specified."
   And from Netbeans i get:
   "The specified Server Location (Catalina Home) folder is not valid."
   This is because there is not a lib directory inside $CATALINA_BASE so to
fix it one must execute (as root):
   # ln -s $CATALINA_HOME/lib $CATALINA_BASE/
   Trying to integrate $CATALINA_HOME neither, i get the error message from
Eclipse:
   "Could not load the Tomcat server configuration at /Servers/Tomcat v7.0
Server at localhost-config. The configuration may be corrupt or incomplete."
   And from Netbeans:
   "The <CATALINA_HOME>/conf/server.xml can't be read."
   To fix it one must execute (as root):
   # ln -s /etc/tomcat/ $CATALINA_HOME/conf
*  Once i try to execute Apache Tomcat with Netbeans i get the error:
   "Starting of Tomcat failed, check whether the
/usr/share/tomcat/bin/catalina.sh and related scripts are executable"
   To fix it execute (as root):
   # chmod +x $CATALINA_HOME/bin/*.sh
So finally some questions:
*  Why the distinction between $CATALINA_HOME and $CATALINA_BASE?. As i
understand this is just when you want to have multiple instances of Apache
Tomcat, each one sharing some directories from $CATALINA_HOME while keeping
their own configuration/libraries [1] [2] [3] [4] separated. Actually, this
is what Eclipse/Netbean does, it ask you for $CATALINA_HOME and create a
$CATALINA_BASE directory to manage it execution ("Create a local server").
   IMHO there should not be $CATALINA_BASE **globally**, but **locally**
(/etc/rc.d/rc.tomcat maybe).
   But remember that /etc/rc.d/rc.tomcat has hardcoded values for $PIDFILE,
$LOGFILE and $USER to work with $CATALINA_BASE so i am not sure this is the
case for multiple instances. Anyway these environment variable would be
uniques to each instance of tomcat (if this is the case) so a better place
to define them would be $CATALINA_BASE/conf/tomcat-java.conf,  which brings
the next question.
*  Why the configuration files are keep in /etc/tomcat?. Is this some kind
of "HIER or die!"? ;-)
*  And finally, why the $CATALINA_HOME/bin/*.sh files are keep with 0744 as
permission? It is for some kind of security?.
I hope to make clear my questions and not generate more ;-)
- Cheers
[1] http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt
[2] http://java.dzone.com/articles/running-multiple-tomcat
[3]
http://www.ramkitech.com/2011/07/running-multiple-tomcat-instances-on.html
[4]
http://blogs.vmware.com/vfabric/2012/10/5-scenarios-and-best-practices-for-running-multiple-instances-of-tomcat-or-tc-server.html
-- 
Antonio Hernández Blas | Oaxaca, México, Mx.
https://github.com/nihilismus | https://bitbucket.org/nihilismus |
https://twitter.com/nihilipster
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.slackbuilds.org/pipermail/slackbuilds-users/attachments/20150119/0bdc7d2d/attachment.html>
    
    
More information about the SlackBuilds-users
mailing list