"Packaged Applications": Application Express-Anwendungen als sofort installierbare Pakete

In der Vergangenheit war das größte Hindernis bei der Übertragung von Application Express-Anwendungen auf andere Server oder Application Express-Umgebungen die Tatsache, dass die einzelnen Komponenten separat exportiert und importiert werden mussten.

  • Die Application Express-Anwendung selbst
  • Bilder
  • Cascading Stylesheets (CSS)
  • Statische Dateien
  • Und last but not least: Alle notwendigen Datenbankobjekte (Unterstützende Objekte) müssen in der neuen Umgebung separat erstellt werden. Dies ist sowohl im Application Express SQL Workshop als auch über Werkzeuge wie SQL*Plus oder SQL Developer möglich.

Ab der neuen Version Application Express 2.2 ist es möglich, Unterstützende Objekte zu einer Applikation zu definieren. Bei einem Export werden diese Objekte dann mit in die Exportdatei aufgenommen und beim Import automatisch mitinstalliert. Um ein solches Installationspaket definieren zu können, klicken Sie im Application Builder auf Ihre Anwendung und in der Task-Leiste rechts auf Definitionen für unterstützende Objekte verwalten.

Navigation zur Definition der Unterstützenden Objekte

Abb.1: Navigation zur Definition der Unterstützenden Objekte

Definition der Unterstützenden Objekte

Abb.2: Definition der Unterstützenden Objekte

Sie gelangen zum in Abbildung 2 dargestellten Dialog. Standardmäßig sind keine unterstützenden Objekte zu einer Anwendung definiert. Sie können nun im einzelnen festlegen ...

  • Installationsvoraussetzungen
  • Ersetzungs-Zeichenfolgen
  • Zusätzliche Validierungen
  • Zusätzliche Installationsskripts
  • Ein Deinstallationsskript

In diesem Tipp erfahren Sie, wie Sie ein einfaches Installationspaket bestehend aus der Prüfung einiger Installationsvoraussetzungen, einigen Installationsskripts und einem Deinstallationsskript erstellen können. Die anderen Optionen werden in der nächsten Ausgabe der Application Express Community näher betrachtet.

Installationsvoraussetzungen

Klicken Sie im in Abbildung 2 dargestellten Dialog zunächst auf die Schaltfläche Bearbeiten und dann auf die Reiterkarte Voraussetzungen.

  • Wenn Sie bei Erforderlicher freier Speicherplatz in KB einen Wert eintragen, wird vor der Installation geprüft, ob im Application Express Workspace noch entsprechend freier Platz vorhanden ist. Wenn Sie hier eine Null (0) eintragen, findet die Prüfung nicht statt.
  • Markieren Sie die Erforderlichen Systemberechtigungen, die für Ihre Applikation benötigt werden. Hier können Sie sicherstellen, dass für die Datenbankobjekte, die Sie mit den Installationsskripts anlegen werden, auch die nötigen Berechtigungen vorhanden sind. In den meisten Fällen benötigen Sie CREATE TABLE, CREATE TRIGGER, CREATE SEQUENCE, CREATE PROCEDURE und CREATE VIEW. Wenn Sie einen "normalen" Application Express Workspace erzeugen, sind alle hier aufgeführten Privilegien vorhanden.
  • Im Bereich Objekte können Sie schließlich verhindern, dass bereits vorhandene Datenbankobjekte durch Ihre Installationsskripts überschrieben werden. Tragen Sie hier einfach die Namen der Objekte (Tabellen, Views, etc) ein, die Sie weiter später mit den Installationsskripts erzeugen werden. Wird während der Installation ein Objekt mit diesem Namen gefunden, so bricht sie mit einer Fehlermeldung ab.
Festlegung der Installationsvoraussetzungen

Abb.3: Festlegung der Installationsvoraussetzungen

Die in Abbildung 3 gemachten Angaben bewirken, dass die Installation nur dann durchführt wird, wenn ...

  • Mindestens 5MB freier Speicherplatz im Application Express Workspace vorhanden sind,
  • die Systemprivilegien CREATE TABLE, CREATE TRIGGER, CREATE SEQUENCE, CREATE PROCEDURE und CREATE VIEW vorhanden sind und
  • die Objekte RSS_TABLE und RSS_TABLE_SEQ nicht existieren.

Installationsskripts

Klicken Sie nun auf die Reiterkarte Skripts und dort auf die Schaltfläche Erstellen, um Installationsskripts zu erzeugen.

Installationsskripts erstellen

Abb.4: Installationsskripts erstellen

Für das erste Skript wählen Sie Völlig neu erstellen aus. Nachdem einen Namen vergeben haben, können Sie im darauf erscheinenden Editor das Skript eingeben. Natürlich ist auch der Upload einer Datei möglich.

Bearbeiten des Installationsskripts

Abb.5: Bearbeiten des Installationsskripts

Nach einem Klick auf Änderungen anwenden ist das Skript gespeichert. Klicken Sie dann erneut auf Erstellen und wählen Sie nun die Option Skript zur Installation der Dateien erstellen. Mit dieser Option können Sie Bilder oder statische Dateien aus Ihrem Application Express-Workspace zum Installationspaket hinzufügen.

Bilder zum Installationspaket hinzufügen

Abb.6: Bilder zum Installationspaket hinzufügen

Markieren Sie die Bilder bzw. die statischen Dateien, welche von Ihrer Anwendung benötigt werden und klicken Sie auf Skript erstellen. Darauf hin wird für jedes markierte Bild bzw. Datei ein Skript erzeugt und zu den Installationsskripts hinzugefügt (Abbildung 7).

Installationsskripts

Abb.7: Installationsskripts

Deinstallationsskript

Klicken Sie als nächstes auf die Reiterkarte Deinstallieren. Im Gegensatz zur Installation gibt es nur ein Deinstallationsskript. Mit dem Erstellen der Skripts für die Bilder wurden automatisch auch Deinstallations-Anweisungen für diese erzeugt - daher ist bereits ein Skript vorhanden.

Deinstallationsskript

Abb.8: Deinstallationsskript

Es fehlen jedoch noch Anweisungen für die im ersten Installationsskript erzeugten Objekte RSS_TABLE und RSS_TABLE_SEQ. Klicken Sie also auf den "Bleistift" links vom Skript-Text, um das Skript zu bearbeiten. Fügen Sie dann eine DROP TABLE und eine DROP SEQUENCE-Anweisung hinzu, um Tabelle und Sequence zu löschen.

Deinstallationsskript bearbeiten

Abb.9: Deinstallationsskript bearbeiten

Wenn Sie fertig sind, klicken Sie auf die Schaltfläche Änderungen anwenden. Um die bis hierher gemachten Definitionen zu aktivieren, klicken Sie nun noch auf die Reiterkarte Export. Wählen Sie aus der Auswahlliste Definition ... in Export aufnehmen den Wert Ja aus und klicken Sie auf Änderungen anwenden.

Definition für unterstützende Objekte in Export aufnehmen

Abb.10: Definition für unterstützende Objekte in Export aufnehmen

Zum Abschluß sehen Sie nochmals eine Zusammenfassung der gemachten Definitionen (Abbildung 11).

Zusammenfassung der gemachten Definitionen

Abb.11: Zusammenfassung der gemachten Definitionen

Export/Import

Achten Sie nun bei einem Applikationsexport auf die Einstellung Definitionen für unterstützende Objekte exportieren. Wenn Ja eingestellt ist, werden die Definitionen für unterstützende Objekte in die Exportdatei aufgenommen. Die separaten Exports für Bilder, statische Dateien oder SQL-Skripts können Sie sich nun sparen. Wenn Sie Nein auswählen, verhält sich der Export wie in den früheren Application Express-Versionen.

Anwendung exportieren: Unterstützende Objekte

Abb.12: Anwendung exportieren: Unterstützende Objekte

Loggen Sie sich nun in einen anderen Workspace ein und importieren Sie die Applikaton. Klicken Sie dazu im Application Builder auf die Schaltfläche Importieren. Führen Sie den Importvorgang so aus, wie Sie es von früheren Application Express-Versionen her kennen. Nachdem die Anwendung installiert wurde, erhalten Sie nun jedoch einen weiteren Dialog (Abbildung 13).

Anwendung importieren: Unterstützende Objekte

Abb.13: Anwendung importieren: Unterstützende Objekte

In diesem Dialog können Sie festlegen, ob Sie die unterstützenden Objekte erzeugen möchten oder nicht. Wählen Sie Ja aus und bestätigen Sie Ihre Auswahl im nächsten Dialog mit einem Klick auf die Schaltfläche Installieren. Nach erfolgter Installation erhalten Sie eine Bestätigungsmeldung. Klicken Sie dann auf Installationszusammenfassung.

Installationszusammenfassung für "Unterstützende Objekte"

Abb.14: Installationszusammenfassung für "Unterstützende Objekte"

Betrachten Sie im SQL Workshop die Datenbankobjekte. Sie sollten die Tabelle RSS_TABLE und die Sequence RSS_TABLE_SEQ finden. Auch die zwei Bilder, welche in das Installationspaket aufgenommen wurden, wurden installiert (Bilder unter Gemeinsame Komponenten).

Ein Versuch, den Import nun nochmals durchzuführen schlägt fehl, da die Objekte RSS_TABLE und RSS_TABLE_SEQ nun bereits vorhanden sind. Probieren Sie es aus - sie werden eine Fehlermeldung erhalten, die in etwa wie in Abbildung 15 aussieht:

Installationsvoraussetzungen nicht erfüllt: Objekt RSS_TABLE ist vorhanden

Abb.15: Installationsvoraussetzungen nicht erfüllt: Objekt RSS_TABLE ist vorhanden

Mit Application Express 2.2 wird es nun wesentlich leichter, Anwendungspakete zu schnüren und ggfs. zum Download bereitzustellen. Zur Installation einer Application Express-Anwendung ist nun kein besonderes Entwickler-Know How mehr nötig. Wenn Sie noch weitere Anwendungen ausprobieren möchten, stehen im Orache Technet (Englisch) und auf dieser Community-Seite (deutsch) einige Beispiele bereit.

Zurück zur Community-Seite