Installation TomEE-8

Aus Letto-Wiki
Zur Navigation springen Zur Suche springen

Verzeichnisse einrichten

Empfohlene Verzeichnisstruktur

  • /opt/letto

In diesem Ordner liegen alle Daten, die von Letto gespeichert und verwendet werden.

  • /opt/letto/images ... Speicherort für alle Bilder und Dateien, die innerhalb von Letto hochgeladen werden.
  • /opt/letto/js ... Speicherort für Javascript-Dateien. Alle extern verwendeten Javaspript-Dateien können in der [Letto-Konfiguration|Letto-Konfiguration] hierher kopiert werden, damit bei der Durchführung von Tests keine externen Daten benötigt werden. Damit kann die Firewall für User-Browser alle externen Zugriffe sperren.

Diese 2 Verzeichnisse (images, photos, js) müssen auch in das [Apache|Apache-Base-Verzeichnis verlinkt] werden.

Der Ordner /opt/letto/images muss in das Backup eingebunden werden!

Die weiteren Ordner werden von LeTTo automatisch erzeugt:

  • /opt/letto/pdf ... Ordner zum Zwischenspeichern von erzeugten User-PDF-Dokumenten.
  • /opt/letto/tex ... Ordner zum Zwischenspeichern von erzeugten Tex-Dokumenten (Verwendung auch bei der Generierung von PDFs).
  • /opt/letto/projekt ... In diesem Ordner werden Schülerprojekte gezippt für alle Abgaben abgelegt.
  • /opt/letto/images/photos ... Speicherort für Schülerfotos: Bildname: SokratesID.jpg

Erzeugung der Ordner und Verlinkung zum Apache-Server

sudo mkdir /opt/letto/images
sudo mkdir /opt/letto/js

Symbolische Links für Apache

cd /var/www/html
ln -s /opt/letto/images images
ln -s /opt/letto/js js

Installation TomEE 8 Server

TomEE download und Installation

  • Aktionen durchführen als user "letto"
  • Download des Servers [1], entpacken der Datei und verschieben nach /opt
wget https://mirror.klaus-uwe.me/apache/tomee/tomee-8.0.1/apache-tomee-8.0.1-plume.tar.gz
tar -xzf apache-tomee-8.0.1-plume.tar.gz
sudo mv apache-tomee-plume-8.0.1 /opt/tomee8
  • Kontrolle ob der Benutzer "letto" alle Recht im Verzeichnis /opt/tomee8 hat
  • MySQL Database-Connector [2] herunterladen und ins TomEE-Verzeichnis kopieren:
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.47.zip
unzip mysql-connector-java-5.1.47.zip
cp mysql-connector-java-5.1.47/mysql-connector-java-5.1.47.jar /opt/tomee8/lib/
  • Datenbank eintragen in der Datei /opt/tomee8/conf/tomee.xml
<?xml version="1.0" encoding="UTF-8"?>
<tomee>
  <!-- see http://tomee.apache.org/containers-and-resources.html -->
  <!-- activate next line to be able to deploy applications in apps -->
  <!-- <Deployments dir="apps" /> -->
  <Resource id="jdbc/letto" type="DataSource">
		JdbcDriver  com.mysql.jdbc.Driver
		JdbcUrl     jdbc:mysql://localhost/letto?autoReconnect=true
		UserName    letto
		Password    xxx-gewähltesPasswort-xxx                
                jtaManaged = true
                testOnReturn = true
                testWhileIdle = true
                timeBetweenEvictionRunsMillis = 60
                initialSize = 2
                minIdle = 2
                validationQuery = "select 1"
  </Resource>
</tomee>
  • Für die Funktion von Primefaces einfügen am Ende der Datei /opt/tomee8/conf/catalina.properties
org.apache.el.parser.SKIP_IDENTIFIER_CHECK=true
  • In /opt/tomee8/conf/context.xml => Kommentar löschen, sodass diese Zeile aktiv
<!-- Uncomment this to disable session persistence across Tomcat restarts -->
  <Manager pathname="" />
  • Port Festlegen in der Datei /opt/tomee8/conf/server.xml:
    zB.: http(8088), https(8483), AJP(8089)
...
<Server port="8005" shutdown="SHUTDOWN">
   ...
   <Service name="Catalina">
      ...
      <Connector port="8088" protocol="HTTP/1.1"
                 connectionTimeout="20000"
                 redirectPort="8483" xpoweredBy="false" server="Apache TomEE" />
      ...
      <Connector port="8089" protocol="AJP/1.3" redirectPort="8483" />
      ...
    
   </Service>
</Server>

Einrichten des Security-Managers für das SourceCode-Plugin

  • Von der Konsole aus die Datei /opt/tomee8/conf/catalina.policy bearbeiten
  • Am Ende anfügen:
grant {
    permission java.util.PropertyPermission "java.security.policy", "write";
    permission java.lang.RuntimePermission "createSecurityManager";
    permission java.lang.RuntimePermission "setSecurityManager";
    permission java.security.SecurityPermission "getPolicy";
    permission java.lang.RuntimePermission "accessDeclaredMembers";
    permission java.io.FilePermission "C:\workspace-oxygen-letto\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\webapps", "read";
    permission java.lang.RuntimePermission "setIO";
    permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
};

TomEE starten

/opt/tomee8/bin/startup.sh

TomEE stoppen

/opt/tomee8/bin/shutdown.sh

letto.war deployen

cd /opt/war
wget -q -c --user letto --password https://letto.at/download/letto/letto-daily.war
cp letto-daily.war /opt/tomee8/webapps/letto.war

siehe auch