Content Management mit Java und DB4O



Ähnliche Dokumente
Adminer: Installationsanleitung

Musterlösung für Schulen in Baden-Württemberg. Windows Basiskurs Windows-Musterlösung. Version 3. Stand:

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Step by Step Webserver unter Windows Server von Christian Bartl

Kleines Handbuch zur Fotogalerie der Pixel AG

WordPress installieren mit Webhosting

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. ist einer davon.

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Anleitung über den Umgang mit Schildern

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Inhaltsverzeichnis. Vorwort... 3 Installation von XAMPP... 3 Installation von Joomla... 8 Schlusswort Copyright

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

Planung für Organisation und Technik

Lokale Installation von DotNetNuke 4 ohne IIS

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Backend

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Legen Sie nun dieses Verzeichnis mit dem Namen "joomla" hier an: C:xampphtdocs.

Tutorial -

Einführungskurs MOODLE Themen:

Schiller-Gymnasium Hof

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

1. Wordpress downloaden

Arbeiten mit dem neuen WU Fileshare unter Windows 7

InkriT Starter - 1/7 -

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Migration NVC 5.x auf NEM/NPro (Migration eines bestehenden, produktiven NVC Verteilservers auf NEM/NPro)

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

1. Laptop: Benutzen Sie die Anleitung ab Seite 2 2. Tablet / Smartphone: Benutzen Sie die Anleitung ab Seite 4. Seite 2 Seite 4

Anlegen eines Nebennutzers an der e Vergabe 5.0

Alle alltäglichen Aufgaben können auch über das Frontend durchgeführt werden, das in den anderen Anleitungen erläutert wird.

NOXON Connect Bedienungsanleitung Manual

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

HTML5. Wie funktioniert HTML5? Tags: Attribute:

Wie halte ich Ordnung auf meiner Festplatte?

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

Für die Bearbeitung von MySQL-Datenbanken ist das Administrationswerkzeug phpmyadmin integriert.

Durchführung der Datenübernahme nach Reisekosten 2011

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Wie richten Sie Ihr Web Paket bei Netpage24 ein

CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

FastViewer Remote Edition 2.X

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Live Update (Auto Update)

Drupal 8 manuell installieren

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Beispiel Shop-Eintrag Ladenlokal & Online-Shop im Verzeichnis 1

Installation des Zertifikats am Beispiel eines WWW-Servers unter Windows2003. Voraussetzungen

Zeiterfassung mit Aeonos. Bedienungsanleitung für die App

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Installationsanleitung CLX.PayMaker Home

TELIS FINANZ Login App

Fotostammtisch-Schaumburg

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

Content Management System (CMS) Manual

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Pfötchenhoffung e.v. Tier Manager

Sie können diesen Service verwenden, um fast beliebig große Dateien auch über 2 GB zu versenden.

Kurzanweisung für Google Analytics

Einrichten eines E- Mail-Kontos unter Windows Live Mail mit der IMAP-Funktion

OutLook 2003 Konfiguration

OS IDE Webserver Integration des Webservers in die IDE Wireshark Webserver II Dynamisches Webprojekt in Eclipse

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

1. Zuerst muss der Artikel angelegt werden, damit später die Produktvarianten hinzugefügt werden können.

Anleitung für Zugriff auf den LEM-FTP-Server

Ihr CMS für die eigene Facebook Page - 1

Einrichten eines MAPI- Kontos in MS Outlook 2003

Anleitung für Autoren auf sv-bofsheim.de

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Quickstep Server Update

Java Webentwicklung (mit JSP)

Kurzreferenz Website Baker Version 2.8.1

Bilder zum Upload verkleinern

1. Voraussetzungen S Installation des OpenVPN Clients S OpenVPN Client installieren S Entpacken des Zip Ordners S.

LEHRSTUHL FÜR DATENBANKEN

Fremdsprachen bearbeiten

Thunderbird Portable + GPG/Enigmail

mysoftfolio360 Handbuch

Leitfaden für die Installation des Content Management System (CMS) Joomla! auf za-internet Webservern. Die Joomla! Installation

GITS Steckbriefe Tutorial

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt!

COMPUTERIA VOM Wenn man seine Termine am Computer verwaltet hat dies gegenüber einer Agenda oder einem Wandkalender mehrere Vorteile.

FTP-Server einrichten mit automatischem Datenupload für

Schrittweise Anleitung zur Installation von Zertifikaten der Bayerischen Versorgungskammer im Mozilla Firefox ab Version 2.0

WordPress lokal mit Xaamp installieren

INSTALLATION. Voraussetzungen

WEBSEITEN ENTWICKELN MIT ASP.NET

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Backup der Progress Datenbank

Konvertieren von Settingsdateien

Transkript:

Content Management mit Java und DB4O Michael Dienert 25. Juni 2013 Inhaltsverzeichnis 1 Content Management und Datenbanken 1 1.1 html................................... 1 1.2 A patchy server............................. 2 1.3 Apache Tomcat............................. 3 1.4 Webseiten als Dateien.......................... 3 1.5 html mit Datenbanken.......................... 3 1.6 Weitere Funktionen eines CMS..................... 3 1.7 Verbreitete CMS............................ 3 1.8 Jease................................... 4 2 Installation und Start von Jease 4 3 Content-Types von Jease 5 4 Jease, JSP und JSTL 6 A Erstes Übungsprojekt 6 1 Content Management und Datenbanken Content Management Systeme (CMS) sind Softwareanwendungen, die die Inhalte (Content) eines Webauftritts mit Hilfe einer Datenbank und einer speziellen Software verwalten (Management). Durch die Softwareverwaltung wird es möglich, dass mehrere Autoren - ähnlich wie in einer Zeitungsredaktion - zusammen die Inhalte erstellen und bearbeiten (gemeinschaftliches Arbeiten). 1.1 html Klassische Webseiten werden mit der Auszeichnungs-Sprache html geschrieben. html- Dateien sind Textdateien, die Text und Formatierungsanweisungen enthalten. Für die Formatieranweisungen verwendet man den Fachbegriff markup. Der markup bestimmt, wie der Text dargestellt werden soll (Hoch-, Tiefstellen, fett, kursiv,...). 1

Damit der Text vom markup unterschieden werden kann, werden die markup-befehle in spitze Klammern gesetzt. Diese Befehle in spitzen Klammern werden auch Tags genannt. Tag ist ein englisches Wort und bedeutet etwa so viel wie Preisschild. Auch der Begriff markup stammt aus dem Handel und bedeutet dort einfach Preiserhöhung. Neben den einfachen Formatier-Tags gibt es noch eine Unzahl weiterer Tags, die an dieser Stelle nicht behandelt werden sollen. Ein einfachstes html-beispiel könnte etwa so aussehen: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> <head> <title>seitentitel</title> </head> <body> <h1>eine Überschrift</h1> ein bisschen blabla. eine horizontale Linie <hr/> <address>dienert@wara.de</address> </body> </html> 1.2 A patchy server Wenn man nun Webseiten über das Internet betrachten möchte, benötigt man dazu zwei Programme: Einen Webserver, der den html-text über eine tcp-verbindung versendet Ein Client-Programm, das Seiten über Port 80 bei einem Webserver anfordert und dann den empfangenen html-text grafisch aufbereitet. Diese Client-Programme werden Browser genannt. Genauer ist der Begriff http user agent. User-Agent und Server verwenden dabei das Protokoll http, dem fest der Port 80 auf der Serverseite zugeordnet ist. Erfunden wurden html und http von Tim Berners-Lee am Kernforschungszentrum CERN in Genf. Dort wurde auch der erste Webserver entwickelt. Da viele Leute weltweit an der Entwicklung dieses Servers teilgenommen haben und ständig neue Patches hinzukamen, war der Server sozusagen ein Software-Patchwork, also a patchy server. Daraus wurde dann der Name des Servers: Apache und später dann eine grosse Open-Source- Entwicklergemeinschaft, die sich um die Weiterentwicklung des Webservers Apache kümmert (aktuelle Version: 2.2). Neben dem Apache-Webserver pflegt die Apache Software Foudation eine grosse Zahl 1 weiterer Projekte. 1 Aktuell: über 100 Top-Level-Projekte 2

1.3 Apache Tomcat Ein sehr bekanntes Apache-Projekt ist Tomcat. Tomcat ist ein in Java geschriebener Webserver, der dynamische Webseiten mit Hilfe von Java Servlets und Java Server Pages (JSP) erzeugen kann. 1.4 Webseiten als Dateien Einen Webauftritt kann man nun komplett mit html-textdateien und einem Webserver wie z.b. Apache gestalten. Bei modernen, anspruchsvolleren Seiten kommen natürlich noch Multimedia-Daten hinzu, die ebenfalls im Dateisystem des Rechners liegen, auf denen die Apache-Serversoftware läuft. Der ganze Inhalt (Content) des Webauftritts ist also in vielen Dateien in einer Ordnerstruktur gespeichert. 1.5 html mit Datenbanken Bei grossen Webauftritten wird es zunehmend schwieriger, die Inhalte zu pflegen, weshalb Softwaresysteme entwickelt wurden, die mit Hilfe einer Datenbank den gesamten Content verwalten. Für den User-Agent erfolgt dieser Einsatz völlig transparent: nach wie vor liefert der Webserver über die tcp-verbindung html-text und Multimedia-Inhalte zurück. Nur wird dieser nicht aus einer Datei sonder aus einer Datenbank gelesen. 1.6 Weitere Funktionen eines CMS Viele CMS sind als sog. Autorensysteme konzipiert. Ein Autorensystem kann man sich wie eine Zeitungsredaktion vorstellen: verschiedene Autoren schreiben Beiträge und reichen sie bei der Redaktion ein. Der Chefredakteur bestimmt anschliessend, was davon veröffentlicht wird. Bei vielen CMS sind Webanwendungen integriert, mit denen auch Autoren ohne htmlund Programmierkenntnisse eine Seite oder einen Webauftritt (Site) gestalten können. 1.7 Verbreitete CMS Sehr weit verbreitete CMS sind z.b. Joomla Typo3 Beide arbeiten mit der Kuchensprache 2 und benötigen eine Datenbank im Hintergrund (mysql/mariadb) und den Apache-Webserver. 2 Kuchensprache = PersonalHomePage-Sprache, wer die Abkürzung (igitt) ausspricht oder schreibt, muss einen Kuchen spendieren 3

1.8 Jease Jease ist ebenfalls ein CMS, unterscheidet sich von Joomla und Typo3 jedoch: Als Webserver wird Apache-Tomcat verwendet. Jease selbst ist eine Webanwendung, die innerhalb von Tomcat läuft. Dadurch lässt sich Jease leicht mit eigenen Java Server Pages erweitern. Jease verwendet als Datenbank db4o und nicht das unvermeidliche mysql. db4o ist eine Objektdatenbank und ist natürlich auch zu 100% in Java geschrieben. Damit wird ermöglicht, dass ein Java-Objekt als Ganzes (mit Eigenschaften und Methoden) dauerhaft in der Datenbank gespeichert und auch wieder in die Java- VM geladen werden kann. Jease bringt mit Lucene (von Apache) eine eigene Volltextsuche mit. Jease erlaubt es, mit dem eingebauten ZK-Web-Framework Ajax-basierte Webanwendungen zu entwickeln. 2 Installation und Start von Jease Die Installation und der Start von Jease sind sehr einfach. Einzige Voraussetzung ist ein Rechner, auf dem das Java-Development-Kit in der Standard- Edition (z.b. Java SE Development-Kit 6 oder 7) installiert ist. Dann sind folgende Schritte auszuführen: 1. Von hier: http://www.jease.org/download Die neueste Release herunterladen und im gewünschten Verzeichnis entpacken. 2. Im Verzeichnis in das Jease entpackt wurde, das Startskript mit dem Parameter run ausführen: bin/catalina.sh run 3. Zur Konfiguration des Admin-Accounts, diese Seite aufrufen: http://localhost:8080/cms/setup Passwortanforderungen: Mind. 8 Zeichen, Gross- und Kleinbuchstaben, Ziffern und Sonderzeichen. 4. Anschliessend kann man sich als Administrator hier anmelden: http://localhost:8080/cms/ 4

3 Content-Types von Jease Im Folgenden sind die allerwichtigsten Content-Types von Jease beschrieben. Jease bietet noch weitere Content-Types, deren Funktion in der Online-Dokumentation beschrieben sind. Text Dieser Content-Type enthält einfachen Text (plain text) oder html-text (Text und Markup). Bei der Erzeugung eines Text-Objekts startet eine Editor-Webanwendung und man kann direkt in einem Browserfenster den Text erzeugen. Dabei kann man den Text entweder in html (indem man auch dem Markup eingibt) oder mit Hilfe der Textverarbeitungsfunktionen des Editor formatieren. Im letzteren Fall wird der Markup automatisch hinzugefügt und es sind keinerlei html-kenntnisse notwendig. Ordner Ordner-Objekte erlauben, eine baumförmige Ordnung aufzubauen. Die Inhalte eines Ordners werden in einer Navigationsspalte angezeigt, wenn bei den entsprechenden Inhalts-Objekten das Häckchen Sichtbar gesetzt wurde. Achtung: enthält ein Ordner nur Unterordner aber keine Dateien oder andere Objekte, wird keine Navigationsspalte angezeigt! Auch dann nicht, wenn bei den Unterordnern das Häckchen sichtbar gesetzt ist. Komposition Eine Komposition ist ein Ordner, der seinen gesamten Inhalt als eine einzelne Seite darstellt. Z.B. eignet sich eine Komposition dazu, Text und dazugehörige Bilder zu gruppieren. Gliederung Mit einem Gliederungselement kann man ein Unterkapitel in er Navigationsspalte erzeugen. Datei beliebige Binärdateien Bild Wie Datei, als Content sind aber ausschliesslich Bilddateien erlaubt. Zugang Mit diesem Objekt kann man einzelne Ordner schützen. Dazu wird ein neuer Ordner erstellt und darin wiederum das Zugangs-Objekt mit einem Benutzernamen, Passwort und evtl. Laufzeit. Diskussion Hiermit wird ein Forum erzeugt. In der Standardeinstellung ist die Ansicht flach, d.h. die Benutzer können nur Kommentare zu einem Thema hinzufügen. Über eine Konfigurationseinstellung 3 lässt sich aber eine Baumansicht einschalten, so dass die Benutzer auch die Kommentare ihrerseits kommentieren können. Skript Mit diesem Objekt kann man sehr einfach Seiten mit Funktionalität erzeugen. In der Vorenstellung wird JSP verwendet. Auch die Verwendung der JSP Standard Tag Library ist möglch, dazu müssen wir aber erst die JSTL-Bibliothek in das lib-verzeichnis vom jease kopieren. Vgl. Kap. 4 3 CMS System Parameter. Dort JEASE DISCUSSION PRESENTATION = thread hinzufügen. 5

4 Jease, JSP und JSTL Um die JSP Standard Tag Library verwenden zu können, muss man zwei Bibliotheken (in Form von jar-dateien) in das lib-verzeichnis von Jease kopieren. Das lib- Verzeichnis liegt direkt unterhalb des jease-verzeichnisses. Diese beiden jar-archivdateien der JSTL-Library gibt es hier: https://jstl.java.net/download.html -> JSTL Implementation Als dieser Text geschrieben wurde waren die aktuellsten Versionen diese hier: javax.servlet.jsp.jstl-1.2.1.jar javax.servlet.jsp.jstl-api-1.2.1.jar Diese beiden Dateien müssen also heruntergeladen und nach jease/lib/ kopiert werden. Dann sollte das folgende Beispiel auf Anhieb funktionieren: Inhalt eines einfachen Skript-Objekts. Es wird eine JSP-Seite mit JSTL verwendet. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <form method="post"> <input type="text" name="textfeld"/> <input type="submit" name="hau wech!"/> </form> Du hast <c:out value="${param.textfeld}" default="noch nix"/> eingegeben. Die offizielle Dokumentation zur JSTL findet sich hier: http://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/ A Erstes Übungsprojekt Erstelle den Webauftritt eines Vereins. Dabei soll enthalten sein: Die Startseite Eine Seite mit kurzen Steckbriefen der Vorstandsmitglieder und des Beirats. Mit je einem Foto zu jeder Person Eine Fotogalerie Ein Diskussionsforum Eine Seite mit den Jahresterminen (Hauptversammlung, Feste, Veranstaltungen,...) Eine Fotogalerie Eine Seite mit aktuellen Daten. Z.B. Wettkampfergebnisse bei Sportvereinen Ein Impressum (vgl. Telemediengesetz, Impressumspflicht) 6