Child pages
  • Install Tomcat 8

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Sv translation
languageen
  • Apache Tomcat - http://tomcat.apache.org/
  • Note: Always do a fresh install of Tomcat 8
  • Note: For Sakai versions prior to 11.4 please use Tomcat 8.0.34 or earlier. Later versions of Tomcat may cause problems. example:
    Jira
    serverSakai
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId66e9c5b5-d22c-30a2-a9d4-703f4354570c
    keySAK-31608
  • Note: Windows users should ensure that there are no spaces in the complete tomcat path as this causes errors with JSF tools in Sakai
    GOOD: C:\opt\tomcat\, C:\sakaistuff\installs\tomcat\
    BAD: C:\program files\tomcat\, C:\opt\apache tomcat 8.0.43\
  1. Download Tomcat 8 - https://tomcat.apache.org/download-80.cgi

    • Windows users should get the zip file instead of installing a service
      It makes viewing the tomcat logs easier and it is easier to configure

       


  2. Extract to /opt (symlink the apache-tomcat-8.0.x directory to tomcat after extracting)
    • Example (assuming you have saved the file as /opt/apache-tomcat-8.0.x.tar.gz)

      Code Block
      cd /opt
      tar xzvf apache-tomcat-8.0.x.tar.gz
      ln -nsf apache-tomcat-8.0.x tomcat
    • Windows users should either rename the directory or, if comfortable, create a directory junction using an elevated cmd prompt:

      Code Block
      mklink /J C:\apache-tomcat-8.0.x C:\tomcat
  3. Modify conf/server.xml for international character support
    1. Add URIEncoding="UTF-8" to the Connector element
      • <Connector port="8080" URIEncoding="UTF-8" ...
  4. Set environment variable: CATALINA_HOME=/opt/tomcat
  5. Add $CATALINA_HOME/bin to PATH
  6. Setup the SETENV file in the tomcat/bin directory with JAVA_OPTS (from Install Java 1.8).

    Tip
    titlePopulate Database With Demo Data

    Instead of starting with an empty database you can add the flag -Dsakai.demo=true in addition to the others shown here. During your first Tomcat launch it will populate your database with test data (students, courses, etc). Once the data has been created remove this flag for subsequent Tomcat launches. Be advised that this flag will not trigger on a database with data already in it so you must make this choice during the initial setup. It should also be noted that without this flag one will not be able to create any course sites in Sakai unless Academic Term, Subject, Course, and Section data is manually added to the "cm_" tables in the database.

    Note

    We recommend using -Djava.util.Arrays.useLegacyMergeSort=true until this issue can be resolved - 

    Jira
    serverSakai
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId66e9c5b5-d22c-30a2-a9d4-703f4354570c
    keySAK-31707

     


    1. Mac/Linux: Create a file called setenv.sh with the following (alternately, you can put this into your .bashrc file so they're automatically executed):

      Code Block
      titleTomcat 8 Mac/Linux
      export JAVA_OPTS="-server -d64 -Xms1g -Xmx2g -Djava.awt.headless=true -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC”DisableExplicitGC"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Dhttp.agent=Sakai”Sakai"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false”false"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Dsakai.security=$CATALINA_HOME/sakai/"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Duser.timezone=US/Eastern”Eastern"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Dsakai.cookieName=SAKAI2SESSIONID”SAKAI2SESSIONID"
      JAVA_OPTS=“$JAVA"$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8089 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false”
      
      
      
      false"
    2. Windows(PC): Create a file called setenv.bat with the following:

      Code Block
      titleTomcat 8 Windows
      set JAVA_OPTS=-server -Xmx1028m -XX:MaxMetaspaceSize=512m -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dhttp.agent=Sakai -Djava.util.Arrays.useLegacyMergeSort=true -Dfile.encoding=UTF8
  7. [OPTIONAL] Delete the default webapps from the webapps dir

    No Format
    rm -rf webapps/*
    
Improve startup speed

You can improve startup speed under Tomcat 8 significantly.

For Sakai 12 and earlier: Edit the file conf/context.xml and add this JarScanFilter block to the <Context>

Code Block
       <JarScanner>
        <!-- This is to speedup startup so that tomcat doesn't scan as much -->
        <JarScanFilter defaultPluggabilityScan="false"
defaultTldScan="false"
tldScan="jsf-impl-*.jar,jsf-widgets-*.jar,myfaces-impl-*.jar,pluto-taglib-*.jar,sakai-sections-app-util-*.jar,spring-webmvc-*.jar,standard-*.jar,tomahawk*.jar,tomahawk-*.jar"/>
    </JarScanner>

 

For Sakai 19 and later: After the JSF 2.3 migration, users may update the tomcat configuration to this one:

 

Code Block
       	<JarScanner>
        <!-- This is to speedup startup so that tomcat doesn't scan as much -->
        <JarScanFilter defaultPluggabilityScan="false" defaultTldScan="false"
tldScan="jsf2-widgets-*,jar,javax.faces-*.jar,jsf-impl-*.jar,jsf-widgets-*.jar,myfaces-impl-*.jar,pluto-taglib-*.jar,sakai-sections-app-util-*.jar,spring-webmvc-*.jar,standard-*.jar,tomahawk*.jar,tomahawk-*.jar"/>
    </JarScanner>

 



Sv translation
languagefr
  • Apache Tomcat - http://tomcat.apache.org/
  • Note : Toujours faire une nouvelle installation de Tomcat
  • Note : Les utilisateurs de MS Windows doivent s'assurer qu'il n'y a pas d'espaces dans le nom du chemin complet de l'installation de Tomcat, ceux-ci provoquent des erreurs avec les outils développé en JSF dans Sakai
    BON : C:\opt\tomcat\, C:\sakaistuff\installs\tomcat\
    MAUVAIS : C:\program files\tomcat\, C:\opt\apache tomcat 7.0.1\
  1. Télécharger tomcat 7 à  http://tomcat.apache.org/download-70.cgi
    • Les utilisateurs de MS Windows doivent récupérer le fichier zip et utiliser les fichiers .bat fournis pour l'arret/relance au lieu de l'installer en tant que service de MS Windows
      Il permet d'afficher et de lire plus facilement les journaux de Tomcat, et il est plus facile à configurer

      Warning
      Si vous utilisez Sakai 2.9.1 ou une version antérieure, vous devez utiliser Tomcat 7.0.21 ou une version antérieure. Si vous utilisez une version supérieure à la 7.0.21, Webdav et Sitestats auront des erreurs et ne fonctionneront pas. La meilleure solution est de passer à la dernière version de Sakai et de Tomcat.
      Jira
      serverSakai
      serverId66e9c5b5-d22c-30a2-a9d4-703f4354570c
      keySTAT-339
      Jira
      serverSakai
      serverId66e9c5b5-d22c-30a2-a9d4-703f4354570c
      keySAK-23156
  2. Décompresser l'archive de Tomcat (tar.gz ou tar.bz2) dans le répertoire /opt (créer un lien symbolique entre le nouveau répertoire apache-tomcat-7.0.x qui vient d'être créé et le répertoire tomcat après la décompression)
    • Les utilisateurs de MS Windows doivent juste renommer le répertoire apache-tomcat-7.0.x en tomcat, après décompression de l'archive zip de Tomcat, puisque la possibilité de faire des liens symboliques n'existent pas sur MS Windows
  3. Extraire les fichiers vers le même endroit que que tomcat lui-même (Ndt : phrase pas claire, fichiers de Tomcat ou de Sakai ?, phrase inutile désormais ?)
  4. Modifier le fichier conf/server.xml pour ajouter le support des caractères internationaux, c'est à dire non anglo-saxon, par exemple avec des caractères accentués pour le français.
    1. Ajouter le paramètre URIEncoding="UTF-8" dans la section de l'élément Connector
      • <Connector port="8080" URIEncoding="UTF-8" ...
  5. Paramétrer la variable d'environnement suivante : CATALINA_HOME=/opt/tomcat via la commande système suivante : export CATALINA_HOME=/opt/tomcat
  6. Ajouter le chemin du répertoire $CATALINA_HOME/bin à la variable du système PATH via la commande système suivante : export PATH=$PATH:$CATALINA_HOME/bin
  7. Créer le fichier SETENV dans le répertoire tomcat/bin avec la variable d'environnement JAVA_OPTS (depuis Install Java 1.7+)
    1. Pour Mac/Linux: Créer un fichier appelé setenv.sh avec le code suivant  (d'une autre façon, vous pouvez mettre celui-ci dans votre fichier .bashrc ainsi il sera exécuté automatiquement):

      Code Block
      export JAVA_OPTS="-server -Xmx1028m -XX:MaxPermSize=320m -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dsun.lang.ClassLoader.allowArraySyntax=true"
      
    2. Pour MS Windows(PC): Créer un fichier appelé setenv.bat avec le code suivant:

      Code Block
      set JAVA_OPTS=-server -Xmx1028m -XX:MaxPermSize=320m  -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dsun.lang.ClassLoader.allowArraySyntax=true
      
  8. [FACULTATIF] Supprimer l'application web par défaut dans le répertoire webapps

    No Format
    rm -rf webapps/*
    
  9. Configurer Tomcat 7 pour utiliser les vieux répertoires du chargeur de classes (classloader) de Tomact 5.5
    1. Editer le fichier conf/catalina.properties
      1. Ajouter le texte (paramètres) ci-dessous à la ligne qui commence par le texte "common.loader=..."

        No Format
        ,${catalina.base}/common/classes/,${catalina.base}/common/lib/*.jar
        
      2. Ajouter le texte (paramètres) ci-dessous à la ligne qui commence par le texte "shared.loader=..."

        No Format
        ${catalina.base}/shared/classes/,${catalina.base}/shared/lib/*.jar
        
      3. Ajouter le texte (paramètres) ci-dessous à la ligne qui commence par le texte "server.loader=..."

        No Format
        ${catalina.base}/server/classes/,${catalina.base}/server/lib/*.jar
        
    2. [FACULTATIF] Créer les répertoires

      No Format
      mkdir -p shared/classes shared/lib common/classes common/lib server/classes server/lib