Installation TomEE-8: Unterschied zwischen den Versionen

Aus Letto-Wiki
Wechseln zu: Navigation, Suche
(TomEE download und Installation)
Zeile 34: Zeile 34:
 
== TomEE download und Installation==
 
== TomEE download und Installation==
 
* Aktionen durchführen als user "letto"
 
* Aktionen durchführen als user "letto"
 +
** Der user "letto" sollte Schreibrechte im Verzeichnis /opt haben, am einfachsten man trägt den Benutzer als Owner ein.
 +
<pre>
 +
sudo chown letto /opt
 +
sudo chmod 755 /opt
 +
</pre>
 
* Download des Servers [https://mirror.klaus-uwe.me/apache/tomee/tomee-8.0.1/], entpacken der Datei und verschieben nach /opt
 
* Download des Servers [https://mirror.klaus-uwe.me/apache/tomee/tomee-8.0.1/], entpacken der Datei und verschieben nach /opt
 
<pre>
 
<pre>
Zeile 41: Zeile 46:
  
 
cd /opt/letto
 
cd /opt/letto
ln -s /opt/letto/tomee8 tomee
+
ln -s /opt/tomee8 tomee
 
</pre>
 
</pre>
 
* Kontrolle ob der Benutzer "letto" alle Recht im Verzeichnis /opt/tomee8 hat
 
* Kontrolle ob der Benutzer "letto" alle Recht im Verzeichnis /opt/tomee8 hat

Version vom 17. Februar 2020, 10:25 Uhr

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 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, 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"
    • Der user "letto" sollte Schreibrechte im Verzeichnis /opt haben, am einfachsten man trägt den Benutzer als Owner ein.
sudo chown letto /opt
sudo chmod 755 /opt
  • 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

cd /opt/letto
ln -s /opt/tomee8 tomee
  • 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

Update der Anwendung

siehe Update TomEE


siehe auch