Installation und erste Java Applikation auf Oracle WebLogic Server deployen

20 Juli, 2009 - 22:31

In einem vorherigen Tutorial haben wir gezeigt, wie man eine Java Web Anwendung (ein Servlet) mehr oder weniger vollständig mit Maven generiert. Diesmal zeigen wir, wie man auf einem professionellen Java Applikationsserver diese Anwendung ausführt. Als Beispiel verwenden wir den Oracle WebLogic Server und nutzen dabei gleich mal die Chance, einen Blick auf diesen Technologiekuchen zu werfen.

Installation

Seit einiger Zeit ist das 11G Release der Oracle Middleware Produkte verfügbar. Im Rahmen dieses 11G Release wurde der ursprüngliche OC4J Server von Oracle durch den zugekauften WebLogic Server von ehemals BEA Systems ersetzt. Wer bereits den OC4J Server einsetzt, ist natürlich nun in einer hässlichen Investitionssackgasse gelandet, denn früher oder später wird eine Migration auf den WebLogic Server unumgänglich.

Wie immer bei Oracle, kann man sich alle Produkte zum Test von deren Homepage herunterladen. Den Oracle WebLogic Server findet man auf seiner Produktseite. Für den Download benötigt man einen Account für das Oracle Technology Network. Die Erstellung des Accounts ist kostenlos und geht auch nicht mit einer Werbeflut einher, wenn man die entsprechenden Häkchen in seinem Profil deaktiviert.

Ich habe die Installation auf einem Ubuntu 64Bit Linux durchgeführt. Dafür habe ich den Net Installer für die Oracle WebLogic Version 10.3.1 heruntergeladen. Obwohl es der Dateiname anders suggeriert, läuft die Installation trotz 64Bit System einwandfrei durch. Nachdem man den Net Installer heruntergeladen hat, muss man die Datei ausführbar machen und als Systemverwalter (root) ausführen. Dies gelingt über folgende 2 Befehle:

chmod 755 net_oepe11_wls1031_linux32.bin
sudo ./net_oepe11_wls1031_linux32.bin

Als Installationsverzeichnis habe ich mich an die Vorgabe gehalten und in meiner Dateisystemwurzel ein neues "Oracle" Verzeichnis mit dem Unterordner "Middleware" angelegt. Wenn man den Server nicht in einer Produktionsumgebung betreiben will, kann man dieses Verzeichnis später auch lesbar für andere Nutzer machen, denn standardmäßig hat nur der Systemverwalter Zugriff.

Im nächsten Installationsschritt wird man nach einer Emailadresse gefragt, damit man über Sicherheitsupdates informiert werden kann. Diesen Schritt kann man aber überspringen, wenn man, wie hier, nur mal ein wenig rumspielen möchte.

Der Net Installer konfiguriert lediglich die Installationsroutine, um dann die eigentlichen Installationsdateien aus dem Internet nachzuladen. Der Download umfasst knapp 800MB, läuft aber Dank halbwegs schneller Server in 20-25 Minuten durch. Nach dem Download erfolgt die Installation. Diese dauert seine Zeit, benötigt aber keine weitere Beachtung, da alle wichtigen Einstellungen bereits vorgenommen wurden. Man kann die einzelnen Schritte ohne Änderungen durchklicken.

Konfiguration Oracle WebLogic Server

Nachdem die Installation abgeschlossen ist, wird automatisch der in der folgenden Abbildung gezeigte Quickstart Assistent gestartet. Möchte man diesen Assistenten zu einem späteren Zeitpunkt nochmals starten, gelingt dies über folgenden Befehl:

sudo /Oracle/Middleware/utils/quickstart/quickstart.sh

Startet man den Assistenten direkt nach der Installation, ist der zweite Punkt der Auflistung nicht enthalten.

Richtig interessant ist der erste Punkt. Mit diesem kann man eine neue WebLogic Domain erstellen. Eine WebLogic Domain ist notwendig, bevor man einen Server starten kann. Vereinfacht gesprochen ist eine WebLogic Domain eine Art virtueller Administrationsbereich. In einer WebLogic Domain können mehrere Server Instanzen betrieben werden. Alle Server Instanzen werden über einen Administrationsserver bedient und konfiguriert. Ein Deployment einer Java Applikation geschieht immer für jede Domain einzeln. Wie man die Domains schneidet, ist dabei einem selbst überlassen. Man kann sich z.B. an einzelnen physischen Servern oder aber auch Aufgabenbereichen orientieren.

Der durch einen Klick auf den ersten Punkt gestartete Assistent führt einen Schritt für Schritt durch die Konfiguration einer Domain. Im ersten Schritt wird man gefragt, ob man eine neue Domain anlegen oder eine existierende erweitern möchte. Hat man etwa zuvor schon andere Oracle Middleware Produkte installiert, kann es sinnvoll sein, eine existierende Domain zu erweitern. Ist dies nicht der Fall, legt man eine neue Domain an. Hier im Beispiel legen wir eine neue Domain an.

Im nächsten Schritt kann man auswählen, ob eine spezielle Vorlage für die Erstellung der Domain verwendet werden soll. Hier wählen wir die Standardvorlage, mit der der WebLogic Server der Domain hinzugefügt wird.

http://localhost:7001/webapp-expl_web/

Im nächsten Schritt muss ein Bezeichner für die Domain gewählt werden. Weiterhin kann der Speicherort für die Domain geändert werden. Auch diese Einstellungen kann man so übernehmen.

Der nächste Schritt ist wichtiger. Hier definiert man den zentralen Administratorzugang für den Server. Den Nutzernamen und das verwendete Passwort muss man sich notieren, damit man später auf den Verwaltungsbereich des Servers zugreifen kann.

Anschließend muss man festlegen, ob es sich bei der Domain um ein Produktivsystem oder ein Testsystem handelt. Je nach Auswahl werden unterschiedliche JDKs genutzt. Für dieses Tutorial wählen wir natürlich Development Mode.

Abschließend kann man noch wählen, ob man für die einzelnen Teilkomponenten spezielle Einstellungen durchführen will. Für dieses Tutorial ist dies aber nicht nötig und wir können den Schritt deshalb abschließen.

Der nächste Dialog zeigt nochmals eine Übersicht für die Domain und fasst die wichtigsten Angaben zusammen. Anschließend wird die Domain generiert und der Assistent ist beendet. Danach kehrt man zum Quickstart Assistenten zurück. Da man unter Linux aus diesem Assistenten heraus nicht den Server starten kann, beenden wir jetzt den Assistenten komplett.

Oracle WebLogic Server starten

Der Start des Oracle WebLogic Servers gelingt wiederum per Kommandozeile. Die Domains sind als Verzeichnisbäume unter dem "user_projects" Ordner organisiert und enthalten jeweils ein Skript, mit dem sich die Domain hochfahren lässt. Wurde in den verschiedenen Assistenten jeweils die Standardeinstellungen für Pfadnamen und Domainbezeichner verwendet, kann die Domain "base_domain" mit folgendem Befehl gestartet werden:

sudo /Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh

Der Start des Servers dauert je nach Performance des eigenen Rechners einige Sekunden. Anschließend kann man den Server über die URL http://localhost:7001/ ansprechen. Bei Aufruf dieser URL erhält man aber eine relativ nutzlose Seite.

Dem Wurzelverzeichnis unseres WebLogic Servers wurde also noch keine Applikation zugeordnet. Deshalb probieren wir nun zunächst den Aufruf der Administrationskonsole. Diese erreichen wir über die URL http://localhost:7001/console. Beim ersten Aufruf findet ein automatisches Deployment der Applikation statt, was unter Umständen einen Moment beansprochen kann. Anschließend wird der Login Bildschirm angezeigt. Wir können uns nun mit dem Benutzernamen und Passwort, dass wir während der Konfiguration der Domain angegeben haben, uns am Administrationsbereich der Domain anmelden.

Der nächste Abschnitt des Tutorials zeigt, wie wir nun eine einfache Java Web Applikation auf unserer neuen Domain deployen.

Java Web Applikation auf Oracle WebLogic Server deployen

Im letzten Abschnitt dieses Tutorials möchten wir eine Java Web Applikation auf unserem neu installierten Oracle WebLogic Server installieren. Zunächst benötigen wir dazu eine Java Web Applikation. Wie wir uns diese generieren, steht in dem Tutorial zu Maven und Java Webapps. Als Resultat haben wir eine WAR Datei. Diese WAR Datei enthält alle notwendigen Resourcen, die eine Java Web Applikation ausmachen.

Nachdem wir uns am Oracle WebLogic Server und der entsprechenden Domain angemeldet haben, wie im Konfigurationsschritt gezeigt wurde, erhalten wir folgenden Startbildschirm.

Die Masse an Links erschlägt einem zunächst. Später, wenn man die verschiedenen Seiten mehrmals durchgeklickt hat, stellt man aber fest, dass die Komplexität geringer ist, als es hier zunächst erscheint. Im Screenshot ist der Link markiert, der uns zur Oberfläche führt, über die wir alle Applikationen auf dem Server verwalten können. Die Verwaltungsoberfläche erlaubt es uns auch neue Applikationen zu installieren.

Nach einer frischen Installation ist zu sehen, dass der Server noch keine Applikationen bereitstellt. Deshalb müssen wir nun eine neue Applikation installieren, indem wir auf die im vorherigen Screenshot markierte Schaltfläche klicken.

Man kann eine WAR Datei einer Java Web Applikation entweder manuell in das Upload Verzeichnis der Domain kopieren oder dies über ein spezielles Formular erledigen. Die vorherige Abbildung zeigt den Link, über den man zur Upload Seite gelangt. Wurden bereits WAR Dateien im Upload Verzeichnis abgelegt, können diese hier für das Deployment direkt ausgewählt werden.

Die nächste Abbildung zeigt das Formular, um eine WAR Datei in das Upload Verzeichnis hochzuladen. Man wählt zunächst eine Datei von der Festplatte aus und bestätigt dann den Upload durch einen Klick auf die Next Schaltfläche am unteren Ende des Formulars.

Da wir inzwischen eine Datei in das Upload Verzeichnis hochgeladen haben, können wir diese Datei nun für das Deployment auswählen. Die folgende Abbildung zeigt den Zustand direkt nachdem eine Datei über das vorherige Formular hochgeladen wurde. Hat man die Datei ausgewählt, geht es wiederum weiter über die Next Schaltfläche.

Im nächsten Schritt muss man angeben, ob es sich bei dem Deployment um eine Anwendung oder eine Bibliothek handelt. Die Auswahl ist klar und es geht weiter mit Klick auf Next.

Nun folgt ein ziemlich umfangreiches Formular, in dem man viele weitere Einstellungen vornehmen kann. Glücklicherweise ist die Vorauswahl aller Optionen so gesetzt, dass man das Formular in der Regel mit einem beherztem Klick auf Next überspringen kann.

Jetzt haben wir es fast geschafft. Damit es schnell weiter geht, überspringen wir jetzt bewusst den Punkt unsere Konfiguration der Web Applikation nochmals zu kontrollieren und starten stattdessen direkt das Deployment durch einen Klick auf die Finish Schaltfläche.

Abschließend gelangen wir zurück zur Übersicht aller in der Domain verfügbaren Applikationen. Unsere gerade zur Verfügung gestellte Java Web Applikation wird ebenfalls angezeigt. Durch einen Klick auf die Web Applikation kommt man in die Detailansicht der Applikation. Dort kann man zum Beispiel den Zustand der Applikation kontrollieren und überwachen.

Für unser Tutorial ist dies allerdings nicht notwendig. Stattdessen wollen wir die Applikation nun endlich ausprobieren. Wenn wir keinen Fehler gemacht haben, können wir nun die Java Web Applikation aus unserem Maven Tutorial unter der URL http://localhost:7001/webapp-expl_web/ aufrufen. Das Ergebnis mag wenig überraschen, aber ist trotzdem immer wieder schön zu sehen :-)