IMS – Das opus 5 CMS: Technik
Java-Framework und SQL-Datenbank
Der Kern des IMS ist nach dem MVC-Pattern mit Servlets, JSPs und Controller-Klassen sowie einer Persistenz-Schicht mit Objekt-Cache aufgebaut. Die Servlets und JSPs werden standardmäßig durch einen Tomcat-Server ausgeliefert, die Persistenz-Schicht ist per JDBC mit einer PostgreSQL-Datenbank verbunden.
Templates
Die Templates des IMS sind grundsätzlich JSPs, welche dynamisch eingebunden werden. Es gibt mehrere Typen von Templates (Masterlayout, Seitenlayout, Paragraphenlayout sowie ggf. selbst definierte Typen), die jeweils einer Controller- bzw. Subcontroller-Klasse zur Verarbeitung zugeordnet sind. Zugeordnete Klassen können auch Template-Caches für eine bessere Performance definieren. Für Masterlayouts, Seitenlayouts und (im CMS-Modul) Paragraphenlayouts sind solche Caches bereits implementiert.
Konfiguration
Die Konfiguration jeder Webapplikation erfolgt durch Datenbankeinträge, welche zur Laufzeit über die Administrationsoberfläche geändert werden können. Dazu gehören u.a. die Einstellung der Sprache, der Standardlayouts, des Email-Servers, des Zeitgeberintervalls u.a.
Zeitgesteuerte Aktionen
Automatisierte Abläufe können über zeitgesteuerte Aktionen erzeugt werden. Solche Aktionen werden in der Regel durch Zusatzmodule definiert. Beispiele hierfür sind regelmäßiges Indizieren der Inhalte für die Suche, Konsistenzüberprüfungen aller Art, Workflows, Importe oder Exporte u.a.
Modultechnik
Module können über die Administrationsoberfläche der Applikation hinzugefügt, aktualisiert oder auch wieder entfernt werden.
Module sind ZIP-komprimierte Dateien, die kompilierten Java-Code, JSPs, Bilder, JavaScript- und CSS-Dateien enthalten können. Zu jedem Module existiert immer eine XML-Datei, in der Name und Abhängigkeiten des Moduls sowie für jede Version des Moduls zusätzliche Properties sowie Installations- und Desinstallationsskripte für die Datenbank aufgeführt sind. Zu den Datenbankeinträgen gehören auch Informationen zu zusätzlichen Servlets, Templates, Tabellen etc. Während der Installation werden zusätzlich alle neu installierten Dateien gelistet und die ZIP-Datei wird in der Datenbank für eine evtl. Deinstallation gespeichert.
Module können keine Dateien anderer Module überschreiben, alle angegebenen Abhängigkeiten müssen während der Installation erfüllt sein.
Die Installation von Modulen erfolgt durch den Upload des Moduls in der Administrationsoberfläche und die anschließende Bestätigung der erkannten durchzuführenden Aufgaben. Nach jeder Modulinstallation wird der Tomcat automatisch neu gestartet, um neue Elemente zu registrieren und Caches zu aktualisieren.