2019.06

Migration MyCoRe LTS 2018.06 nach 2019.06

Diese Seite fasst Systemanforderungen für die Nutzung des MyCoRe LTS 2019.06 und die Migration von Version 2018.06 zu 2019.06 zusammen.

Systemanforderungen MyCoRe LTS 2019.06

Für den Betrieb einer MyCoRe-Anwendung unter LTS 2019.06 sind folgende Voraussetzungen zu erfüllen:

Betriebssystem

MyCoRe LTS 2019 ist auf diesen Betriebsystemen im Einsatz. Höhere Versionen sollten kein Problem darstellen.

  • Open SuSE Leap 15 / 15.1
  • SuSE SLES 15 / 15.1
  • Ubuntu 18.04 LTS
  • CentOS 7
  • Windows 10 für Test- und Entwicklungssysteme

Standardsoftware

Zur Arbeit mit MyCoRe LTS 2019 sind folgende Softwarekomponenten erforderlich bzw. empfohlen. Diese sind alle von Drittanbietern und im Normalfall in den Distributionen enthalten.

  • Java 11 (OpenJDK)
  • Tomcat 8.4 oder Tomcat 9.0 bzw. Jetty 9.4.18 (alternativ ein System mit Unterstützung von Servlet-3.1)
  • SOLR 7.7.1 oder höher
  • eine hibernate-fähige relationale Datenbank wie PostgreSQL, MySQL, DB2; für Testzwecke genügt auch die integrierte Datenbank H2
  • Git 2.12 oder höher
  • Apache Maven 3.6.0 oder höher

Migrationsschritte

Um die Migrationskommandos nutzen zu können, muss die Komponente mycore-migration eingebunden werden.

1
2
3
4
5
 <dependency>
   <groupId>org.mycore</groupId>
   <artifactId>mycore-migration</artifactId>
   <version>2019.06-SNAPSHOT</version>
 </dependency>

Umstrukturierung des derobject-Tags im mycoreobject

Mit dem LTS 2019.06 wurde die Struktur des derobject-Tags innerhalb eines mycoreobject geändert (siehe XML-Syntax eines MyCoRe-Objektes). Diese Änderung kann mittels Migrationskommando automatisiert durchgeführt werden.

1
2
3
 mycore.sh
   -> select objects with solr query -derCount:0 AND -objectType:derivate OR -objectType:data_file in core main
   -> execute for selected migrate derivatelink for object {x}

host-Parameter

Der Stylesheet-Parameter host ist mit Ticket MCR-1013 ersatzlos entfallen. Die Verwendung in alten XSLT-Stylesheets ist zu entfernen. Als Vorlage können die entsprechenden Anpassungen in der MIR-Anwendung dienen: MCR-1013 remove host parameter support.

Migration nach Bootstrap 4

Für alle im Kern mitgelieferten Frontend-Webseiten, die xEditor-Komponente und alle Administrationswerkzeuge wird unter LTS 2019.06 jetzt die Verwendung von Bootstrap 4 vorausgesetzt. Damit einher geht auch der Ersatz der Glyphicons durch Fontawesome. In die eigene Anwendung sind also folgende Dinge einzubinden:

  CSS Javascript sonstiges
für Bootstrap bootstrap.min.css jquery.min.js
jquery-ui.min.js
bootstrap.min.js
 
für Fontawesome all.min.css   das Verzeichnis webfonts aus der Distribution

Dies bedeutet auch, dass in den eigenen Stylesheets verschiedene Anpassungen gemäß der Bootstrap 4 Migrations-Anleitung durchzuführen sind. Das ist mit etwas Aufwand verbunden, aber im Sinne einer langfristigen Anwendungspflege notwendig. Als hilfreiches Werzeug hat sich auch das Bootply Migration Tool erwiesen.

Die Bootstrap-Klassen zur Validierung existieren in der alten Form nicht mehr. Daher wurden MyCoRe-eigene Klassen definiert und verwendet (betrifft ACL-Editor, Login & xEditor). Damit die Darstellung wie gewohnt aussieht, muss das CSS in der Anwendung wie folgt erweitert werden:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* bootstrap 4 fix
 * this is only a workaround for server side validation, we should
 * refacture the html an use html5 features here - TODO
 */
.mcr-invalid {
  label {
    color: red;
  }
  input,
  select {
    border: 1px solid red;
    padding-right: calc((1em + .75rem) * 3 / 4 + 1.75rem);
  }
}
.mcr-valid {
  label {
    color: green;
  }
  input,
  select {
    border: 1px solid green;
  }
}