Die Features  
 
Die Features
PDF
 
Von:
Thorsten Kamann  <thorsten.kamann@planetes.de>
Peter Roßbach  <pr@objektpark.de>
 
In diesem Dokument finden Sie eine Liste der Features der Centaurus-Platform. Am Ende dieses Dokumentes finden Sie darüber hinaus noch Informationen wie Sie uns einen Feature-Request, also eine Anfrage auf ein neues Feature, übermitteln können.

Inhalt:


Die Features

Service Die Centaurus-Platform wird in das Betriebssystem integriert. Dieses Feature wurde mit dem Wrapper-Projekt realisiert. Dieser Wrapper erlaubt auf einfache Art und Weise eine Integration mit dem darunter liegenden Betriebssystem. Er erkennt auch, wenn es zu einem Absturz der JVM gekommen ist und startet die Centaurus-Platform kurzerhand neu.

Mithilfe des Wrappers haben wir auch den Restart des Servers über die Management-Konsole realisiert.
Mehrere Konfigurations-Profile Ein häufiger Anwendungsfall ist, dass man eine lauffähige Konfiguration hat, in der die verschiedensten Hosts mit ihren Anwendungen laufen.
Um eine bestimmte Konfiguration oder Einstellung zu testen, ist es die denkbar schlechteste Lösung, die bestehende Distributions-Konfiguration zu ändern.
Deswegen unterstützt die Centaurus-Platform Konfigurationsprofile. Sie können beliebig viele Profile erstellen und diese sogar parallel - jeweils in einer eigenen JVM - laufen lassen.
Ein weiterer denbarer Anwendungsfall für verschiedene Konfigurationsprofile sind die sogenannten Reseller-Angebote. Dort wird einem Kunden Webspace angeboten, die er an seine Kunden verteilen kann.
Graphische Installer für UNIX und Windows Damit unsere Platform einfach und leicht auf Ihr System kommt, haben wir IzPack für Unix und Windows genutzt. So können Sie bequem und komfortabel die Centaurus-Platform auf Ihrem System installieren. Der Clou ist, dass die Installationsroutinen weiterhin auf unseren erprobten Ant Installer/Uninstaller Skripten basieren. Eine Installation in einer Konsole ist also direkt auf Ihrem Root-Server möglich. Natürlich werden die Daten der Installation gespeichert und ein Klon Ihrer Installation auf weiteren Systemen ist schnell und sicher möglich.
PluginInstaller Der integrierte PluginInstaller überprüft bei dem Start eines Centaurus-Platform-Profils, ob Plugins entfernt oder installiert werden müssen.
Ressourcen wie Templates, Scripts und Dokumentationen werden in die Centaurus-Platform integriert und bei einer Deinstallation auch wieder entfernt.
Eigene Installationsroutinen können mittels eines Ant-Scripts einfach integriert werden.
Sicherheit Die Centaurus-Platform läuft natürlich mit gestartetem SecurityManager, um einen sicheren Betrieb nebeneinander zu erlauben. Eine Besonderheit ist, dass wir diese Sicherheits-Policy während der Laufzeit und ohne Neustart des Servers verändern können.
Die Webanwendungen können eine begrenzte Anzahl von Sicherheitsregeln selbst definieren und diese werden dann beim Start der Anwendung installiert bzw. beim Beenden der Anwendung wieder deinstalliert.
In unserer TomC@ Kolumne: Bau einer Trutzburg im JavaMagazin April 2004 können Sie sich über das vermeidbare Risiko informieren.
Zentrale Dokumentation Es gibt eine zentrale Dokumentation, die alle Dokumente enthält und auch sehr anpassbar ist. In dieser Dokumentation werden alle relevanten Dokumente und Ressourcen zusammengeführt und daraus eine Webanwendung erstellt, die aus reinen HTML-Seiten und PDF-Dokumenten besteht.
Somit ist die Weitergabe auf CD kein Problem.

Seit dem Release 1.0beta6 ist es auch möglich die Dokumentation als dynamische Webanwendung zu installieren. Sobald sich ein Dokument ändert wird die Webanwendung aktualisiert.
Natürlich können Sie auch jederzeit einen Snapshot aus statischen HTML-Seiten erzeugen.
MX4J-Http-Adaptor Alle Einstellungen eines Centaurus-Platform-Profils werden im internen Management-Server gespeichert. Damit der Admin auch Remote entsprechende Einstellungen ändern kann gibt es den HTTP MX4J Adaptor. Dieser Adapter bietet ein Web-Interface, mit dem Sie alle anfallenden Aufgaben erledigen können. Die Benutzeroberfläche des Adapters nicht besonders intuitiv. Aber es gibt ja noch die Management-Konsole, die diesen Adapter langfristig ersetzen wird.
Der Zugang ist mit einer eigenen Authorisierung gesichert und kann auf Wunsch mit SSL weiter geschützt werden.
Benutzerdatenbank Alle Benutzerdaten (Logins, Rollenzugehörigkeiten, Permissions) und erweiterte Systemeinstellungen werden in der internen Benutzerdatenbank gespeichert. Eine Benutzerverwaltung ist in der Management-Kosnole verfügbar.
Die Datenbank ist eine HSQL-Datenbank und wird automatisch mit der Centaurus-Platform gestartet und gestoppt.
Management-Konsole Damit sowohl der Administrator und Ihre Kunden eine Möglichkeit der Verwaltung von Hosts und Kontexten (Webanwendungen) haben, ist eine Management-Konsole integriert. Ein durchdachtes User-Management zeigt nur Daten an, die der Benutzer auch wirklich sehen darf.

Die einzelnen Ansichten bestehen aus XML-Views, die dann in das gewünschte Format transformiert werden. Langfristig ist auch ein Desktop-Anwendung bzw. ein Eclipse-Plugin geplant.
Für dieses Sub-Projekt suchen wir dringend weitere Unterstützung. Für jede Hilfe in Form von Entwicklungen, Ideen und schlichten Anforderungen sollten Sie mit uns in unserem Forum diskutieren.


Geplante Features

Nicht alle Features, die wir gerne bereitgestellt hätten, sind auch für das aktuelle Release fertig geworden. Weitere Ideen und erste Vorschläge haben wir in der folgenden Tabelle zusammengetragen:

Web-Server Integration Die Integration in bestehende Apache, IIS oder Domino Server wäre wirklich hilfreich. Die Integration soll mit dem MOD_JK realisiert werden und ein automatisches Mapping von Webanwendungen ermöglichen. Der AJP-Connector ist natürlich bereits integriert, aber die Integration in Ihrem Web Server ist noch nicht in der Centaurus-Platform enthalten. Schon jetzt zeichnet sich aber ab, dass wir im 1.0 Release über eine gute Integration verfügen werden. Falls Sie schon jetzt eine Integration möchten, tauschen Sie ihre Anforderungen über unser Forum mit uns aus, oder probieren es einfach mal aus.
Mail-Server Integration Die Integration des James 2.2.x Mail Servers und eines Java Web- Mail Anwendung wäre natürlich eine gelungende Abrundung unsers Projekts. Der Java Mail Server James der Apache Group läßt sich heute schon in den JBoss einbetten. Erste Informationen befinden sich im Wiki des James-Projekts Bestimmt läßt sich der angesprochene JMX-Launcher auch für die Centaurus-Platform nutzen. Ein Java Web-Mail Client befindet sich im Projekt jwma und die Installationsanleitung für den Tomcat 4 ist auch schon vorhanden. Falls Sie diese Integration möchten, tauschen Sie ihre Anforderungen über unser Forum mit uns aus, oder probieren es einfach mal aus.
Scheduler-Integration Eine Cron braucht man häufiger alles man am Start eines Projekts wirklich glaubt. Backups und wiederkehrende Datensynchonisation müssen koordiniert werden. In der Centaurus-Platform gibt es dafür bislang nur die Möglichkeiten auf Betriebssystem Lösung, wie der Cron unter Unix oder dem Task-Scheduler unter Windows, zurückzugreifen. Vielleicht ist auch der JMX-Timer oder der Quartz-Scheduler eine Lösung. Falls Sie diese Integration möchten, tauschen Sie ihre Anforderungen über unser Forum mit uns aus, oder probieren es einfach mal aus.
Dynamischer Logging-Support mit Log4J Es wäre sehr hilfreich, wenn man das Logging mit Log4J dynmaischer für dem gesamten Server steuern könnten. Im Release 1.0beta5 sind schon erste Ansätze bereitgestellt, die nur darauf warten ein eigenes Plugin zu werden (s. Logging Howto).


Feature-Requests

Wenn Sie ein Feature vermissen und dieses gerne in die Centaurus-Platform integriert haben wollen, dann können Sie einen Feature-Request stellen. Benutzen Sie dazu diesen Link.