Home

Portal Manager API-Programmierhandbuch

image

Contents

1. base ou software o company example group base ou groups ou software o company example role base ou roles ou software o company example dn pattern uid ou software o company example password attrib userPassword mappings E mapping LDAP_USER_ID pomaattr uid ldapattr uid E CN pomaattr cn ldapattr en INIT_PASSWORD pomaattr pwdChange ldapattr initPassword VIP_ACCESS pomaattr account Portal Manager API Programmierhandbuch 143 Kapitel 5 144 Parameter Wert ldapattr vipAccess LDAP_OBJECTCLASS pomaattr objectclass ldapattr objectClass TRUSTED_LOGIN pomaattr trustedLogin ldapattr VIP_FUNCAREAS trustedLogin pomaattr ldapattr vipFuncarea vipFuncarea VIP_RIGHTS pomaattr vipRights ldapattr vipRights LANGUAGE pomaattr language ldapattr preferredLocale LDAP_VIP_TYPE pomaattr vipType ldapattr vipType VIP_WEBSITES pomaattr website Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Parameter Wert ldapattr vipWebsite HCL_PROFILES pomaattr hclProfiles ldapattr hclProfiles MAIL pomaattr email ldapattr mail VIP_MEMBERS pomaattr user name ldapattr member VIP_SUBSTITUTE pomaattr vipSubstitute ldapattr vipSubstitute USER_PASSWORD pomaattr userpassword ldapat
2. amp Deploymentsysteme E 7 Server Agenten B Dienstprogramme p Repositories Applications E ClickStreamApplication amp Repositories t Parameter E H A Abb 19 Zu einer Application zugeordnete Repositories 86 Livelink WCM Server Portal Manager API verwalten Zuordnung eines Repository zu einer Application herstellen So ordnen Sie ein Repository zu einer Application zu 1 W hlen Sie Konfiguration gt Applications gt Application Name gt Repositories 2 Wahlen Sie Repository zuordnen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol an Symbol zum Zuordnen eines Repository zu einer Application Der Dialog Repository ausw hlen wird ge ffnet Er zeigt eine Liste der noch nicht zugeordneten Repositories 3 Markieren Sie das gew nschte Repository 4 Klicken Sie auf die Schaltfl che OK Zuordnung eines Repository zu einer Application aufheben Um die Zuordnung eines Repository zu einer Application wieder aufzu heben markieren Sie das entsprechende Repository im rechten Fenster bereich W hlen Sie Zuordnung des Repository aufheben aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Symbol zum Aufheben der Zuordnung eines Repository zu einer Application Struktur unterhalb des Elements Applications Jede angelegte Application hat die Knoten Repositories und Parameter Wenn Sie der Application Repositories oder Parameter zu
3. WCN Internationalisierungsobjekt Um die Internationalisierung zu unterst tzen stellt Livelink WCM Server ein spezifisches Internationalisierungsobjekt zur Verf gung das in den WCM Beans verwendet wird Der Zugriff auf dieses Objekt wird ber die Methode getI18n gew hrleistet Dieses Objekt kann auch f r die Interna tionalisierung von eigenen Beans und Applications verwendet werden Portal Manager API Programmierhandbuch 175 Kapitel 5 Die Klasse de gauss vip i18n Internationalization stellt folgende Funktionalit t zur Verf gung m Laden von ResourceBundle Objekten m Erhalten von Schl sseln von einem bestimmten ResourceBundle Erhalten von Locale spezifischen Daten und Zeitformaten 176 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Portal Manager API Programmierhandbuch 177 178 Livelink WCM Server ANHANG A Metadatenschemata Um die Abwartskompatibilitat mit den alten Versionen des Portal Manager API zu gew hrleisten sind die Namen und Datentypen der Metadaten gegen ber der Version 5e unver ndert geblieben Bei der Konfiguration jedes VipObjectRepository und VipObjectHandlerRepository k nnen Sie angeben welches Metada tenschema Sie verwenden m chten siehe Tabelle 3 Repositories und ihre Parameter auf Seite 60 Die folgende Tabelle stellt die Metadatenschemata f r die Versionen 5e und 8 gegen ber Metadatenschema in Versi
4. objBean getUrl 255 gt gt lt td gt lt td gt lt Gets only the content of the object i e content without template gt lt objBean getVipContent jsp gt lt td gt lt tr gt lt table gt lt body gt lt html gt Mit der Methode getVipContent der Klasse VipObjectBean k nnen Sie auf den HTML Code der Content Objekte zugreifen Dar ber hinaus stellt dieses Bean die Methode getContent bereit die einen ContentHandler zur ckliefert ber diese Klasse kann auf bestimmte Inhalte im Content zugegriffen werden z B auf bestimmte Attribute in Formularinstanzen Der Content wird ber eine URL Verbindung geladen d h dynamische Seiten werden ausgef hrt bevor sie zur ckgeliefert werden Diese Methoden erfordern als Parameter ein RepositoryEntry Das Portal Manager API stellt Ihnen zahlreiche Methoden zur Verf gung um ein RepositoryEntry indirekt zu ermitteln Wenn Ihnen die Objekt ID eines Content Objekts bekannt ist k nnen Sie ein RepositoryEntry jedoch direkt mit der Methode getEntry der Klasse VipObjectBean ermitteln Portal Manager API Programmierhandbuch 157 Kapitel 5 WCM Objekte ber ein HTML Formular erstellen Mit dem Portal Manager API lassen sich HTML Formulare entwickeln mit denen Content formularbasiert erstellt werden kann Eine formularbasierte Eingabe ist immer dann vorteilhaft wenn viele gleichartige Content Objekte erstellt werden sollen und die zust ndigen Benutzer eine ve
5. und JSP Vorlage Formularinstanz und Formularvorlage m XML Dokument XML Vorlage XSLT Dokument und XSLT Vorlage Spezialattribute Folgende Spezialattribute spielen bei der Statifizierung von Objekten eine Rolle m generate_static Mithilfe des Spezialattributs generate_static wird die objektabh n gige Statifizierung gesteuert siehe Abschnitt Objektabhangige Statifizierung auf Seite 42 Dieses Attribut hei t im Content Client Seite statifizieren timeout Wenn der Code einer dynamischen Seite in statischen Code umge wandelt werden soll wird die betreffende Seite zun chst als tempor re Seite erzeugt Diese tempor re Seite wird ber eine URL Verbindung ausgef hrt Das Ergebnis dieser Ausf hrung wird als endg ltige statische Seite geschrieben Im Admin Client wird in der Konfiguration des Deploymentsystems die Wartezeit in Millisekunden f r den Aufruf der URL Verbindung zu der tempor r generierten dynamischen Seite eingestellt Diesen Wert k nnen Sie mithilfe des Spezialattributs timeout im Meta daten Dialog des Content Clients berschreiben 40 Livelink WCM Server Konzepte Der f r eine Seite g ltige Timeout Wert wird auf die folgende Weise bestimmt 1 Der Wert des Spezialattributs timeout wird f r das zu statifizie rende Objekt bestimmt 2 Der Wert des Spezialattributs timeout wird f r die Vorlage die dem zu statifizierenden Objekt zugewie
6. DS verwendet Master Admin Server Systemdaten Master Content Server Website Daten InternetSite Abb 3 Aufbau eines Minimalsystems 28 Livelink WCM Server Konzepte Ein Minimalsystem installieren Sie mithilfe der entsprechenden Option im WCM Installationsprogramm siehe Livelink WCM Server Installations handbuch Um eine Website in diesem Szenario anzulegen starten Sie den Assistenten f r neue Websites im Admin Client und legen Ihre Website mit der Option Minimal bzw Minimal dynamisch an Verteiltes WCM System mit separaten Datenhaltungen Die flexible und skalierbare Systemarchitektur von Livelink WCM Server erm glicht Ihnen den Aufbau verteilter WCM Systeme entsprechend Ihrer Unternehmensstruktur Um die Daten bertragung zwischen den einzelnen Servern zu minimieren k nnen die Proxy Server auf separate Datenhaltungen zugreifen Bei der Nutzung des Portal Manager API in einem solchen Szenario ist zu beachten dass ein Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft nicht gleichzeitig auf unterschiedliche Datenhaltungen zugreifen kann siehe auch Portal Manager API und Datenhaltungen auf Seite 25 Werden die Daten Ihrer Website ber verschiedene Proxy Content Server gepflegt die auf separate Datenhaltungen zugreifen m ssen diese Server jeweils im Kontext einer JSP Engine bzw als Webanwendung in einem Applica tion Server laufen
7. Livelink WCM Server Portal Manager API Programmierhandbuch Dieses Handbuch beschreibt die Entwicklung dynamischer und personalisierter Websites auf Grundlage des Portal Manager API Sie erhalten Informationen zu folgenden Themen e grundlegende Konzepte des Portal Manager API e Konfiguration des Portal Manager API im Admin Client e berblick ber die Klassen und Interfaces des Portal Manager API e Anwendungsbeispiele f r die Programmierung mit dem Portal Manager API OPEN TEXT Great Minds Working Together corRPORA TION Copyright 2005 Open Text Corporation Das Copyright an diesen Unterlagen und der dazugeh rigen Software geh rt ohne Einschr nkungen Open Text Diese Unterlagen und die dazugeh rige Software d rfen ohne die ausdr ckliche schriftliche Genehmigung von Open Text weder ganz noch teilweise kopiert werden Die Open Text Corporation ist Eigent mer der Warenzeichen Open Text Great Minds Working Together Livelink MeetingZone u a diese Liste ist nicht vollst ndig Andere erw hnte Warenzeichen sind Eigentum des jeweiligen Unternehmens und werden nur zum Zweck der Identifizierung der Produkte und Unternehmen verwendet Alle Rechte vorbehalten F r die in diesem Dokument beschriebene Software der Open Text Corporation gelten bestimmte Gew hrleistungen und Einschr nkungen Informationen zu diesen Gew hrleistungen und Einschr nkungen erhalten Sie in dem Lizenzvertrag der zwischen dem Lizen
8. Verarbeitung von Formulardaten In einer Formularinstanz werden die Daten der einzelnen Formularfelder in einer XML Notation abgelegt Zur Generierung dieser XML Daten aus einem HTML Formular werden die Methoden der Klasse FormData einge setzt Die Klasse FormData Vollst ndiger Name de gauss vip portalmanager util forms FormData Portal Manager API Programmierhandbuch 37 Kapitel 2 Die Klasse FormData bietet Methoden zur Verarbeitung von Formular daten insbesondere zum Lesen von Daten aus einem HTML Formular und Speichern der Formulardaten als XML Dokument Von besonderer Bedeutung ist in diesem Zusammenhang die Methode processFilledFormder Klasse FormData Diese Methode erzeugt ein XML Dokument und extrahiert die Metadaten f r das WCM Objekt aus den bergebenen Formulardaten Weitere Informationen zu dieser Methode finden Sie in der Javadoc zum Portal Manager API Eine weitere Hilfsklasse zur Verarbeitung von Formularen und ihren Daten ist die Klasse XmlContentConverter die das direkte Separieren von Feldern aus dem XML Dokument erlaubt Weitere Angaben zu dieser Klasse und ihren Methoden finden Sie in der Javadoc zum Portal Manager API Anlegen eines Objekts Nachdem der Content und die Metadaten f r eine Formularinstanz ber die Methode processFilledForm extrahiert und konvertiert wurden muss die Formularinstanz mit den entsprechenden Daten angelegt werden Die Verbindung zu den Funktionen von Livelink WCM Serv
9. Content Server siehe folgenden Abschnitt Achten Sie darauf dass die Webanwendung zuerst gestartet wird Content Server in JSP Engine starten Wenn der Content Server im Kontext einer JSP Engine l uft die keine Webanwendungen unterst tzt m ssen zum Starten des Servers die im Verzeichnis WCM Installationsverzeichnis tools befindlichen Skripte verwendet werden Folgende Schritte sind dazu erforderlich 1 Um den f r den Content Server ben tigten Klassenpfad zu setzen rufen Sie das Skript setPomaClasspath bat bzw sh auf Dieses Skript befindet sich im Verzeichnis WCM Installationsverzeichnis tools Portal Manager API Programmierhandbuch 31 Kapitel 2 2 Fugen Sie den Klassenpfad der durch das Aufrufen des Skipts erstellt wurde dem Klassenpfad der JSP Engine hinzu 3 Kopieren Sie das mitgelieferte Skript portalmanager bat bzw sh aus dem Verzeichnis WCM Installationsverzeichnis tools in das Wurzelverzeichnis der WCM Installation benennen Sie das Skript um in Name des Content Servers bat bzw sh 4 Ersetzen Sie im Skript Name des Content Servers bat bzw sh alle Platzhalter SERVERNAME durch den Namen des Content Servers Damit der Content Server ber das Skript gestartet werden kann muss die JSP Engine bereits laufen In der Konfiguration der verwendeten JSP Engine muss das Servlet Mapping servlet eingetragen sein Hinweis Wenn Sie mehrere Content Server auf demselben Rechner einricht
10. Die Klasse DirectoryRepository Die Klasse DirectoryRepository realisiert den Zugriff auf einen LDAP Verzeichnisdienst Hierbei handelt es sich um eine alternative von der LDAP Anbindung eines Administrationsservers unabh ngige Art auf LDAP zuzugreifen Es ist m glich ber das DirectoryRepository Daten vom LDAP Server zu laden und dort Daten zu speichern Ein Anwendungsbeispiel hierzu finden Sie im Abschnitt Benutzer ber ein Portal in einem LDAP System anlegen auf Seite 140 Das DirectoryRepository kann ber Parameter konfiguriert werden Die Konfiguration umfasst beispielsweise die Angaben eines Suchknotens Base ab dem neue Eintr ge eingef gt und vorhandene Eintr ge gesucht und geladen werden Jeder Zugriff auf den LDAP Verzeichnis dienst erfordert auch eine Authentifizierung des jeweiligen Benutzers Um Portal Manager API Programmierhandbuch 91 Kapitel 3 neue Eintr ge einf gen zu k nnen muss der Benutzer Administrator rechte f r den LDAP Verzeichnisdienst haben Die Klasse DirectoryRepository kann f r die Authentifizierung von Benutzern f r das Portal Manager API benutzt werden da sie das Inter face LoginRepository implementiert Wenn auf das WCM System schreibend zugegriffen werden soll oder die angeforderten Objekte nicht f r alle Benutzer lesbar sind muss sich der Benutzer ber das VipUserRepository anmelden Bei dieser Anmeldung wird dem Benutzer eine Context ID zugeordnet die das WCM System f
11. dass Sie beim Programmieren von JSP Seiten m glichst alle auf der Seite ben tigten Attribute beim ersten Zugriff des RepositoryEntry mit angeben sollten Dadurch vermeiden Sie dass bei abweichenden Attributen erneut auf die Datenbank zugegriffen wird und die Datenbank Werte zur ckliefern muss 190 Livelink WCM Server Caching Portal Manager API Programmierhandbuch 191 192 Livelink WCM Server Glossar Application Schnittstelle zur einheitlichen Beschreibung einer externen Anwendung Context ID Objekt das einem Benutzer nach erfolgreicher Anmeldung am WCM System zugeteilt wird Eine Context ID ist immer systemweit eindeutig sie identifiziert deshalb genau einen Benutzer Wird eine Context ID eine gewisse Zeit nicht gebraucht so verf llt sie Deploymentsystem Die Deploymentsysteme erzeugen aus den WCM Objekten Seiten und verteilen die generierten Dateien in die daf r vorgesehenen Verzeichnisse Von dort aus werden die Dateien ber den Einsatz eines HTTP Servers f r die Benutzer sichtbar Deploymentsysteme k nnen unterschiedliche Typen und Kategorien haben Dynamisierung Der Inhalt der einzelnen Seiten einer Website wird komplett oder teilweise erst zur Laufzeit erzeugt JSP Engine Im Webserver integriertes Modul zur Ausf hrung von JSP Skripts die in HTML Seiten eingebettet sind JSP Engines enthalten im Allgemeinen Java Compiler JSP Skript HTML Seite in die Java Code eingebettet wurde der ser
12. mtliche Spezialattribute sowie die folgenden Daten werden in Livelink WCM Server verz gert geladen pathname filename suffix url surrogate_url links_to linked_from all_children nur f r Oracle Hinweise 186 Wenn Sie das Nachladen aus der Datenbank w hrend des laufenden Betriebs vermeiden m chten sollten Sie direkt nach dem Laden des Objekts auf die verz gert zu ladenden Daten zugreifen Dadurch k nnen diese Daten zu einem sp teren Zeitpunkt aus dem Cache geliefert werden Die Metadaten Links_to und Linked_from sollten nur in Ausnah mef llen geladen werden da sie nur durch eine zeitaufwendige Datenbankabfrage ermittelt werden k nnen Livelink WCM Server Caching F r das Metadatum linked_ from gilt dass das Objekt nicht aus dem Cache entfernt wird wenn einem anderen Objekt eine Referenz auf das Objekt hinzugef gt wird oder eine Referenz auf das Objekt entfernt wird B 2 Deployment Cache Deploymentsysteme haben in Livelink WCM Server einen eingebauten Cache fur die vom Deployment gelieferten Metadaten sodass diese Daten ab dem zweiten Zugriff direkt geliefert werden k nnen Vorausset zung hierf r ist dass das Deploymentsystem auf dem zugreifenden Server i A ein Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft eingerichtet ist Diese Konstellation ist zu empfehlen wenn im normalen Betrieb nur wenige nderungen durchgef hrt werden die gro
13. r die Statifizierung verwendete JSP Seite befindet Die relativen URLs sind in diesem Fall falsch Um dieses Problem zu umgehen setzen Sie f r die JSP Seite das Spezialattribut absolute _urls auf den Wert on oder auf jeden anderen Wert als SERVER_RELATIVE Dadurch werden auf der ausgef hrten JSP Seite absolute URLs erzeugt Diese URLs werden bei der Statifizierung der Formularinstanz dann in relative URLs umgewandelt und zwar relativ zu der gerade erzeugten Formularinstanz 44 Livelink WCM Server Konzepte Statifizierung von XML Objekten XML Objekte k nnen statifiziert werden Bei der Statifizierung von XML Objekten werden zwei Falle unterschieden Dem XML Objekt ist eine Formularvorlage zugewiesen oder das Spezialattribut generate_static des XML Objekts hat einen rein numerischen Wert Die Statifizierung erfolgt auf die gleiche Weise wie die Statifizierung von Formularinstanzen d h mithilfe einer JSP Seite siehe Abschnitt Statifizierung von Formularinstanzen auf Seite 43 Hierbei werden f r jedes XML Objekt folgende Dateien erzeugt die nicht statifizierte Seite die statifizierte Seite falls erforderlich die Surrogatseite mit einem Link auf das XML Dokument Hinweis Bei Nutzung einer Formularvorlage wird der Inhalt der nicht statifizierten Seite als HTML Code Dateiendung html verteilt da die Formularvorlage ber cksichtigt wird Dies hat zur Folge dass die JSP Seite die die Statifizierung
14. stelle zur Benutzerverwaltung von Livelink WCM Server Sie stellt Methoden zum Speichern und Laden der Value Objekte verschie dener Repositories sowie Convenience Methoden f r die Behandlung von Bookmark Eintr gen zur Verf gung Die Klasse VipUserBean bietet weiterhin Methoden die es erlauben einen individuellen Benutzer darzustellen Diese Methoden sind deprecated Stattdessen sollte die Klasse VipProfile benutzt werden Um eine Referenz auf ein Objekt der Klasse VipProfile zu erhalten benutzen Sie die Klasse SessionBean Die Klasse VipObjectBean Vollst ndiger Name de gauss vip portalmanager VipObjectBean Die Klasse VipObjectBean implementiert den nur lesenden Zugriff auf alle Objekte der Websites die mit Livelink WCM Server verwal tetet werden Insbesondere sind eine Reihe von Methoden enthalten um den hierarchischen Aufbau der Website zu ermitteln der durch Themenobjekte strukturiert wird Dies lasst sich u a dazu nutzen Navigationen aufzubauen 126 Livelink WCM Server Klassen und Interfaces des Portal Manager API Das VipObjectBean benutzt Repositories der Klasse VipObjectRepository um Daten vom WCM System abzufragen Diese Repositories k nnen auf zwei Arten konfiguriert sein m durch Angabe des Namens eines Deploymentsystems In diesem Fall repr sentiert jedes Repository die Daten eines Deploymentsystems F r jedes Deploymentsystem wird auto matisch ein VipObjectRepository bzw VipObjectHandlerRepository
15. Classic ein sepa rates Browserfenster ge ffnet werden soll M gliche Werte sind false kein separates Fenster und true sepa rates Fenster Standardwert false MAX_SHOWN_FILTER_RESULTS Gibt an wie viele Objekte nach dem Anwenden des Objektfilters maximal in der Ergebnisliste des Content Clients Classic angezeigt werden Standardwert 1000 MAX_SHOWN_LOG ENTRIES 82 Gibt an wie viele Eintrage im Protokoll des Content Clients Classic maximal angezeigt werden Standardwert 100 Livelink WCM Server Portal Manager API verwalten Application Parameter MAX_SHOWN_PRINCIPALS Beschreibung Gibt an wie viele Eintrage in den Auswahllisten zum Hinzuf gen von Principals zu einer Zugriffssteuerungs liste vgl Dialog zur nderung der Zugriffssteuerungsliste maximal ange zeigt werden Standardwert 300 MAX_SHOWN_ REFERENCES Gibt an wie viele Eintr ge in den Listen im Referenzen Dialog des Content Clients Classic maximal angezeigt werden Standardwert 300 MAX_SHOWN TEMPLATES Gibt an wie viele Eintr ge in der Auswahlliste Vorlage des Content Clients Classic maximal angezeigt werden vgl Metadaten Dialog und Dialog zum Anlegen eines neuen Objekts Standardwert 300 MAX_SHOWN_VERSIONS Gibt an wie viele Versionen im Dialog Alte Version wiederherstellen des Content Clients Classic maximal angezeigt werden Es werden die jeweils jungsten Ob
16. Das folgende Beispiel soll ein solches Szenario verdeutlichen Das WCM System besteht aus einem Master Admin Server und einem Master Content Server Die Website InternetSite wird im WCM System angelegt Das System ist auf drei weitere Proxy Content Server verteilt Zwei dieser Proxy Content Server laufen im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server Uber sie erfolgt die Bearbeitung der WCM Objekte mithilfe des Content Clients Auf diesen beiden Servern sind daher entsprechende Edit und QS Deploymentsys teme installiert Der dritte Proxy Content Server dient zur Ver ffentlichung der Produktionssicht der Website auf ihm ist ein Produktionsdeployment system eingerichtet Portal Manager API Programmierhandbuch 29 Kapitel 2 Um die Darstellung Ubersichtlicher zu gestalten sind die Verbindungen vom Master Admin Server zu den anderen Servern in der folgenden Abbildung nicht enthalten Master Admin Server Master Content Server Proxy Content Server 3 InternetSite InternetSite Benachrichtung bei Anderungen l Proxy Content Server 1 Proxy Content Server 2 L Benachrichtigung und bertragung von Content IntemetSite Abb 4 Verteiltes WCM System mit separaten Datenbanken Wird eine nderung an einem WCM Objekt vorgenommen benachrichtigt der Master Content Server die Proxy Content Server 1 und 3
17. Klassen 102 4 3 Application und Bean Klassen 115 4 Livelink WCM Server Kapitel 5 AnhangA Anhang B Glossar Index Hinweise zur Programmierung mit dem Portal Manager API 5 1 Authentifizierung und Session Management 5 2 Anwendungsbeispiele f r das Portal Manager API 5 3 Framework f r Applications 5 4 Gestaltung einer JSP Seite 5 5 Sicherheitsaspekte 5 6 Internationalisierung Metadatenschemata Caching B 1 Zugriff auf WCM Objekte B 2 Deployment Cache B 3 Funktionsweise des Caches f r WCM Objekte B 4 Cachen von RepositoryEntry Objekten Portal Manager API Programmierhandbuch 133 133 140 160 166 168 170 179 185 185 187 188 189 193 197 Abbildungsverzeichnis Abb 1 Das Schichtenmodell des Portal Manager API 20 Abb 2 Das Schichtenmodell des Portal Manager API mit Session und Application Scope 23 Abb 3 Aufbau eines Minimalsystems 28 Abb 4 Verteiltes WCM System mit separaten Datenbanken 30 Abb 5 Der Lebenszyklus eines WCM Objekts 47 Abb 6 Prinzipielles Klassendesign im Portal Manager API 51 Abb 7 Die Elemente der Konfiguration 53 Abb 8 Ubersicht Uber die verfiigbaren Repositories 55 Abb 9 Repository anlegen 57 Abb 10 Anlegen eines Parameters f r ein Repository 58 Abb 11 Zu einem Repository zugeordnete Applications 66 Abb 12 Struktur unterhalb des Elements Repositories 67 Abb 13 bersicht ber die verf gbaren Applications
18. Manager API verwalten Hinweis Microsoft Active Directory unterst tzt nicht das Uberschreiben eines Eintrags Deshalb f hrt bei Microsoft Active Directory die Methode putEntry zu einer Exception wenn der Eintrag im LDAP Verzeichnis dienst bereits vorhanden ist Das Neuanlegen eines Eintrags ist jedoch m glich Alle Methodenaufrufe finden im Kontext des aktuell an der Session angemeldeten Benutzers statt Lediglich die Profilgewinnung beim Anmelden und das Neuanlegen eines Eintrags finden im Kontext von principal statt Wie jedes Repository muss auch das DirectoryRepository ber den Admin Client konfiguriert werden o DirectoryRepository ZI Applications t Parameter authentication base build profile_filter_expr context factory credential changes credentials credentials read dn pattern group base mappings E mapping E language Idapattr pomaattr E name Idapattr pomaattr member key attrib objectclass password attrib principal principal changes principal read role base search scope url Abb 22 Das DirectoryRepository mit seinen Parametern Portal Manager API Programmierhandbuch 93 Kapitel 3 3 4 Fehlersuche Die Fehlersuche innerhalb der Methoden und Klassen die von der Klasse Base direkt oder indirekt ableiten nennt man Tracing Das Tracing Verhalten k nnen Sie in der Datei trace properties konfigurieren Damit die in der Datei vorgenommenen nder
19. New Feature kann um folgende Eigenschaften erweitert werden m Die ermittelte Menge ge nderter oder neuer WCM Objekte kann sortiert werden m Einzelne WCM Objekte k nnen explizit ausgeschlossen werden 130 Livelink WCM Server Klassen und Interfaces des Portal Manager API m Objekttypen k nnen explizit ausgeschlossen werden m Dateinamenendungen k nnen explizit ausgeschlossen werden Von der Superklasse VipObjectFilterBean werden folgende Eigen schaften geerbt m Neben der Whats New Bedingung kann eine weitere Filterbe dingung zur Einschr nkung angegeben werden m Es k nnen WCM Objekte ab einem bestimmten Wurzelobjekt ber cksichtigt werden Die maximale Anzahl von WCM Objekten kann festgelegt werden Es ist m glich eine Sortierung f r die ermittelten Objekte anzugeben Ohne eine explizite Angabe werden die WCM Objekte nach ihrem Freigabedatum sortiert wobei die WCM Objekte mit dem j ngsten Freigabedatum oben in der Ergebnisliste stehen Das Interface ContentHandler Vollst ndiger Name de gauss vip portalmanager ContentHandler Das Interface ContentHandler erm glicht es auf den Content eines Objekts das durch eine URL spezifiziert wird zuzugreifen Der Content kann als String Stream oder Reader gelesen werden In allen F llen kann ein Converter angegeben werden z B XMLContentConverter der den Content konvertiert Converter inter pretieren den Content und geben nur die relevanten Teile z
20. Pools i Eigene Verbindungstypen 8 Server yy Websites amp Deploymentsysteme E Server Agenten B Dienstprogramme E Repositories E Applications E amp Suchserver HE Abb 7 Die Elemente der Konfiguration In diesem Kapitel werden die folgenden Elemente der Konfiguration beschrieben Portal Manager API Programmierhandbuch 53 Kapitel 3 Tabelle 2 Funktionen fiir die Konfiguration von Repositories und Applications Element Verf gbare Funktionen Repositories Erstellen Bearbeiten und L schen von Repositories Siehe Abschnitt 3 1 Repositories verwalten ab Seite 55 Applications Erstellen Bearbeiten und L schen von Applications Siehe Abschnitt 3 2 Applications verwalten ab Seite 69 Die Verwaltung der brigen Elemente und die Bedienung des Admin Clients werden ausf hrlich im Livelink WCM Server Administratorhand buch beschrieben 54 Livelink WCM Server Portal Manager API verwalten 3 1 Repositories verwalten Allgemeine Informationen zu Repositories erhalten Sie im Abschnitt Repositories auf Seite 111 Wenn Sie das Element Repositories ffnen werden Ihnen alle verf g baren Repositories angezeigt sowohl im Baum links als auch in einer Liste im rechten Fensterbereich X Konfiguration Pools i Eigene Verbindungstypen 8 Server y websites L Deploymentsysteme 5 Server Agenten 1B Dienstprogramme Repositori
21. Ressourcen in Applications unbegrenzt Applications kennen keine Sessions Es gibt nur einen einzigen Ressourcenkontext der mit dem Laufzeitbeginn der Appli cation anf ngt und mit dem Laufzeitende aufh rt Die Application wird bei Bedarf von dem Bean instanziiert und gegebenenfalls durch den server seitigen Prozess Java Virtual Machine gestoppt 22 Livelink WCM Server Konzepte Die folgende Abbildung zeigt wo die Grenze zwischen Session und Application Scope liegt JSP Skript Session Scope Application Scope Content Manager Abb 2 Das Schichtenmodell des Portal Manager API mit Session und Application Scope Repositories Repositories sind hnlich wie Applications eine Abstraktion die einheitliche Zugriffe auf Datenbestande erlaubt Neue Anwendungen die unter Ausnutzung der Application Schnittstelle erstellt werden k nnen auf bestehende oder neu zu entwickelnde Repositories zugreifen Portal Manager API Programmierhandbuch 23 Kapitel 2 2 2 Integration des Portal Manager API in das WCM System Die Integration des Portal Manager API in das WCM System kann unter verschiedenen Gesichtspunkten betrachtet werden Zugriff von Portal Manager API L sungen auf Daten des WCM Systems Einbinden von Content Servern auf denen das Portal Manager API zur Verf gung steht in das WCM System Zugriff auf Daten des WCM Systems Aus Sicht der L sungen die auf dem Portal
22. bernimmt nicht direkt den XML Code des XML Objekts auswerten kann Daher ist es nicht empfehlenswert einem XML Objekt eine Formularvorlage zuzuordnen Das Spezialattribut generate_static des XML Objekts hat keinen numerischen Wert dem XML Objekt ist keine Formularvorlage zuge wiesen Mindestens eine Vorlage die dem XML Objekt zugeordnet ist ist eine JSP Vorlage Die Vorlage die dem XML Objekt direkt zugeordnet ist sollte in diesem Fall eine XSLT Vorlage sein Portal Manager API Programmierhandbuch 45 Kapitel 2 Die Statifizierung erfolgt auf die gleiche Weise wie die Statifizierung von JSP Objekten siehe Abschnitt Statifizierung von JSP Objekten auf Seite 42 Dabei werden fur jedes XML Objekt folgende Dateien erzeugt die statifizierte Seite falls erforderlich die Surrogatseite mit einem Link auf das XML Dokument Staging Alle Objekte einer WCM verwalteten Website durchlaufen folgende Stufen Bearbeitung Editieren Qualit tssicherung und Ver ffentlichung im Produktionsbetrieb Die Bearbeitung und Qualit tssicherung der Objekte erfolgt im Content Client Nach der Ver ffentlichung erfolgt der Zugriff auf die Objekte ber einen Browser Das Durchlaufen dieser Stufen wird als Staging bezeichnet Durch die Methoden des Portal Manager API insbesondere die Methoden des VipObjectHandlerBean werden die Objekte einer WCM verwalteten Website bearbeitet Einige dieser Methoden ndern
23. e Auswirkungen f r das Deplo yment haben Andemfalls kann der f r das Deployment erforderliche zus tzliche Aufwand auf diesem Content Server zu Engp ssen f hren Es ist im Einzelfall abzuw gen ob ein schnellerer Zugriff auf die Daten des Deploymentsystem die zus tzliche Belastung durch das separate Deploymentsystem aufwiegt Beispiel Sie verwenden in Ihrer Website eine Vorlagenkaskade die mehr als 10 000 Objekten zugeordnet ist Einige der Vorlagen werden regelm ig einmal pro Woche ge ndert Nach der Freigabe der ge nderten Vorlagen hat das zur Folge dass alle betroffenen Objekte neu erzeugt werden m ssen Dies f hrt zu einer erh hten Belastung des Servers Ob f r Ihr System eine erh hte Belas tung akzeptabel ist kann durch Performance Tests ermittelt werden Portal Manager API Programmierhandbuch 187 Anhang B B 3 Funktionsweise des Caches fur WCM Objekte Der Cache fur WCM Objekte wird im Admin Client in den Einstellungen der Website konfiguriert Konfiguration gt Websites gt Website Name Registerkarte Allgemein Caching Dort lassen sich folgende Para meter einstellen Minimale Gr e Anzahl von Objekten auf die der Cache in Leerlauf zeiten des Servers reduziert wird Der Standardwert ist 20000 m Maximale Gr e Maximale Anzahl von Objekten im Cache Der Standardwert ist 45000 Cache Reduzierzeit Zeitspanne in Millisekunden Der Standardwert ist 7200000 entspricht 2 Stunden W
24. finden Sie die komplette Dokumentation der Klassen des Portal Manager API Es gibt verschiedene flexible Programmierschnittstellen mit denen die Kernfunktionalit ten von Livelink WCM Server ber externe Programme genutzt werden k nnen Die folgende Tabelle beinhaltet eine bersicht ber die verschiedenen Schnittstellen und die jeweils verf gbare Funktio nalit t Tabelle 1 Verf gbare Funktionalit t in den APIs von Livelink WCM Server 14 AdminHandler s nur lesend ber VipUserBean AttributeHandler L a ber ber VipWebsiteBean VipWebService_ Port EventDispatcher Livelink WCM Server Mai LHandler ObjectHandler v ber VipEMailBean Y Uber VipObject HandlerBean Einleitung ber VipWebService_ Port ObjectLoader SystemHandler WorkflowHandler s ber VipWorkf low Bean x ber VipWebService_ Port DeploymentHandler ContextHandler LivelinkAdmin Handler LivelinkObject Handler v Uber LivelinkUser Bean Y Uber LivelinkObject Bean Portal Manager API Programmierhandbuch 15 Kapitel 1 1 2 Typographische Konventionen Programmelemente u A werden im Text folgenderma en hervorgehoben Element Schriftart oder Symbol Beispiele Programmoberfl che Men Eintrag Datei Anlegen wie z B Men befehle Fenster Dialoge Feld und Schaltfl chen bez
25. lt td gt lt tr gt lt table gt lt form gt lt p gt lt hr gt lt if name length gt 0 amp uid length gt 0 amp amp pwd length gt 0 RepositoryEntry newUserEntry new RepositoryEntry add the common name newUserEntry putValue AttributeName CN new StringValue name add the user id newUserEntry putValue AttributeName UID new StringValue uid add the mail address newUserEntry putValue AttributeName MAIL new StringValue mail add the password newUserEntry putValue AttributeName PWD new StringValue pwd allow WCM access newUserEntry putValue AttributeName ACCOUNT new BooleanValue true define a language newUserEntry putValue AttributeName LANGUAGE new LocaleValue Locale getDefault 148 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API the user does not have to change his password newUserEntry putValue AttributeName PWD CHANGE new BooleanValue false no trusted login allowed newUserEntry putValue trustedLogin new BooleanValue false no defalt object rights are defined newUserEntry putValue vipRights new StringValue the user is assigned two object classes vip and vipUser RepositoryMap objectclassMap new RepositoryMap objectclassMap putEntry vip null objectclassMap putEntry vipUser null newUserEntry putValue AttributeName OBJECTCLASS objectclassMap assign the user to
26. m Um eine externe Anwendung ber den Browser steuern zu k nnen m ssen Sie eine HTML Seite mit einem JSP Skript entwickeln Die HTML Seite muss das zuvor entstandene Bean nutzen und ein WCM verwaltetes Objekt sein Es ist also erforderlich dass Sie die HTML Seite in die Website integrieren ber die die zugrunde liegende externe Anwendung erreicht werden soll Wenn Sie die genannten Designvorgaben einhalten ergibt sich automa tisch die f r das Portal Manager API typische Architektur die bereits aufgezeigt wurde Die folgende Abbildung stellt den relevanten Ausschnitt leicht modifiziert dar 50 Livelink WCM Server Konzepte JSP Skript Externe Anwendung Abb 6 Prinzipielles Klassendesign im Portal Manager API Portal Manager API Programmierhandbuch 51 52 Livelink WCM Server KAPITEL 3 Portal Manager API verwalten Dieses Kapitel unterst tzt Sie bei der Konfiguration des Portal Manager API Es enth lt au erdem Hinweise zum Einsatz eines LDAP Verzeichnisdienstes und zur Fehlersuche Die gesamte Konfiguration Ihres WCM Systems erfolgt ber den Admin Client An dieser zentralen Stelle nehmen Sie also auch die Administration und Konfiguration des Portal Manager API vor Um die Konfiguration zu ffnen starten Sie den Admin Client und w hlen das Register A Konfiguration In einer baumartigen Ansicht sehen Sie die Elemente die Sie in dieser Ansicht verwalten k nnen A Konfiguration E
27. muss Client bezogene Profildaten VipProfile KNOWN_USER Dieser Abschnitt dient zu Verwaltung und Speicherung von Daten die persistent zu einem Benutzer gespeichert werden sollen Die Speicherung der Daten erfolgt dabei in einem Cookie Demzufolge stehen die in diesem Abschnitt gespeicherten Daten nur auf dem Client Browser zur Verf gung auf dem der Cookie abgelegt ist Die Lebensdauer eines Cookie ist standardm ig auf 90 Tage begrenzt kann aber ber den Parameter KNOWNUSER_COOKIE_DURATION der Klasse VipUserApplication ge ndert werden benutzerspezifische Profildaten VipProfile VIP_USER Dieser Abschnitt dient zur persistenten Verwaltung und Speiche rung von Benutzerdaten die systemweit eindeutig verf gbar sein m ssen Die Speicherung der Profildaten dieses Abschnitts erfolgt abh ngig von der Art der Benutzerverwaltung in einer Datenbank einem LDAP Verzeichnisdienst oder in Livelink Um in diesem Abschnitt Daten auslesen oder manipulieren zu k nnen muss der jeweilige Benutzer am WCM System ange meldet sein Innerhalb dieses Abschnitts m ssen Daten in unterschiedlichen mit eindeutigen Namen versehenen Unterprofilen gespeichert und verwaltet werden Die Methoden VipProfile getProfileValue String profileName String attribute und VipProfile setProfileValue String Livelink WCM Server Klassen und Interfaces des Portal Manager API profileName String attribute Value value erlauben den Zugriff und die Manipulatio
28. r die Rech te berpr fung ben tigt Damit ein DirectoryRepository f r die Benutzerverwaltung im Portal Manager API benutzt werden kann ist es notwendig in den LDAP Verzeichnisdienst zus tzliche Objektklassen und Attribute einzubinden Es handelt sich um dieselben Einstellungen die vorzunehmen sind wenn Livelink WCM Server auf den LDAP Verzeichnisdienst zugreift Es ist m glich weitere Objektklassen und Attribute in den LDAP Verzeich nisdienst einzubinden Beim Hinzuf gen eines Eintrags in LDAP k nnen diese Objektklassen angegeben werden Sie m ssen als Value im RepositoryEntry unter dem Schl ssel AttributeName OBJECTCLASS als RepositoryMap eingetragen werden Die Bezeichner f r die Attributtypen im LDAP Verzeichnisdienst weichen von den intern im Administrationsserver benutzten ab Die Klasse AttributeName enth lt Konstanten f r die g ltigen Attributnamen und Methoden die bei der Umsetzung dieser Namen zwischen den internen Attributbezeichnern und der LDAP Schreibweise helfen Mapping Das Mapping ist nur f r individuelle Implementationen einer auf LDAP Verzeichnisdienste zugreifenden Repository Klasse n tig Wenn die Klasse DirectoryRepository Daten schreibt werden die internen Attri butbezeichner automatisch in die Bezeichner f r den LDAP Verzeichnis dienst umgewandelt Beim Lesen aus dem LDAP Verzeichnisdienst findet das dann auch automatisch in der umgekehrten Richtung statt 92 Livelink WCM Server Portal
29. spezifiziert hostname Der Hostname des Doorways Servers zu dem eine Verbindung hergestellt werden soll port Der Port des Doorways Servers f r die Verbindung pwd user Das Passwort des unter user angegebenen Standardbenutzers Der Standardbenutzer dessen Daten fur die Authen tifizierungsmethode CONFIG verwendet wird Portal Manager API Programmierhandbuch 63 Kapitel 3 Repository Parameter VipObjectHan Beschreibung dlerRepository fur Deploymentsysteme deployment name Der Name des Deploymentsystems z B Website Name _edit auf dessen Objekte ber das Reposi tory zugegriffen wird Hinweise Alternativ kann das Repository auch durch Angabe der Parameter viewund website konfiguriert werden Auf diese Weise kann auf die Objekte einer Website zugegriffen werden ohne Deploymentsys teme einzurichten Repositories die so konfiguriert sind k nnen keine Deployment spezifischen Objektdaten z B URL Pfad zur ckliefern Der Parameter deployment name hat Vorrang vor den beiden Parametern viewund website d h ist der Parameter deployment name spezifiziert werden die eventuell ebenfalls spezifizierten Para meter view und website ignoriert metadata style Das verwendete Metadatenschema In diesem Parameter wird festgelegt ob das Repository die Attributnamen und werte entsprechend der Version 5e oder 8 verwendet M gliche Werte sind 5e und 8 Eine ve
30. und den WCM Parametern M gliche Mappings sind z B name und Language Diese haben die Attribute ldapatttr und pomaattr Das Attribut pomaattr darf nicht ge ndert werden vgl Abbildung 22 Das DirectoryRepository mit seinen Parametern auf Seite 93 member key attrib Der Name des LDAP Attributes unter dem die Benutzer einer Gruppe bzw Rolle gespeichert werden objectclass Der Name der Objektklasse die beim Anlegen eines neuen Eintrags eingef gt werden soll sofern keine Objektklasse spezifiziert ist Beispiel vipUser Die Eintr ge sind durch Leerzeichen separiert password attrib Der Name des LDAP Attributs das in Livelink WCM Server als Passwort verwendet wird Portal Manager API Programmierhandbuch 61 Kapitel 3 Repository Parameter principal Beschreibung Ein LDAP Benutzer mit dem Recht Eintr ge hinzuzuf gen Beispiel uid admin ou software o company example principal changes Ein LDAP Benutzer mit dem Recht schreibend auf Eintr ge im LDAP Verzeichnisdienst zuzugreifen Wenn dieser Parameter nicht gesetzt ist wird das ndern und L schen von Eintr gen im Kontext des angemeldeten Benutzers durchgef hrt principal read Ein LDAP Benutzer mit dem Recht lesend auf Eintr ge im LDAP Verzeichnisdienst zuzugreifen Wenn dieser Parameter nicht gesetzt ist wird der lesende Zugriff im Kontext des angemeldeten Benut zers durchgef hrt role bas
31. von den Routing Eintellungen des Content Servers ab Sollen ber den Content Server nderungen an den Daten einer Website durchgef hrt werden z B ber den Content Client muss der Content Server die Edit Sicht der Daten erhalten in diesem Fall hat der Content Server Zugriff auf alle drei Sichten der Website Aufgrund der flexiblen Systemarchitektur von Livelink WCM Server gibtes f r den Aufbau eines WCM Systems zahlreiche M glichkeiten Das Livelink WCM Server Administratorhandbuch enth lt ausf hrliche Infor mationen zu diesem Thema In den folgenden Abschnitten werden zwei Szenarien f r die Integration des Portal Manager API in ein WCM System dargestellt Portal Manager API Programmierhandbuch 27 Kapitel 2 Minimalsystem Das WCM System besteht aus einem Master Admin Server und einem Master Content Server Der Master Content Server wird im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server ausge f hrt Auf dem Master Content Server steht damit das f r die Bearbeitung von Websites mit dem Content Client erforderliche Portal Manager API zur Verf gung Die Website InternetSite wird auf dem Master Content Server angelegt Die Objekte der Website werden ber drei Deploymentsysteme Edit QS und Produktion in unterschiedliche Verzeichnisse verteilt Damit wird auf dem Master Content Server das komplette Staging realisiert F r Deploy mentsystem wird in der Abbildung die Abk rzung
32. 69 Abb 14 Basisdaten der Application festlegen 71 Abb 15 Assistent beenden 72 Abb 16 Repository beim Anlegen einer Application zuordnen 73 Abb 17 Ressourcen beim Anlegen einer Application zuordnen 74 Abb 18 Anlegen eines Parameters f r eine Application 76 Abb 19 Zu einer Application zugeordnete Repositories 86 Abb 20 Struktur unterhalb des Elements Applications 88 Abb 21 Zu einem Content Server zugeordnete Applications 89 Abb 22 Das DirectoryRepository mit seinen Parametern 93 Abb 23 Darstellungsschema f r die Klassendiagramme 101 Abb 24 Mehrstufige Schl ssel Wert Listen in der TupelMap 104 Abb 25 Die grundlegenden Klassen im Gesamtklassendiagramm 105 6 Livelink WCM Server Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb Abb 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 Die Filterungs und Sortierungsklassen im Gesamtklassen diagramm Die Klasse RepositoryMap im Gesamtklassendiagramm Strukturelle Beziehungen der komplexen Datentypen Mehrstufige Schl ssel Wert Listen in der RepositoryMap Die Repository Klassen im Gesamtklassendiagramm Die Application Klassen im Gesamtklassendiagramm Die Bean Klassen im Gesamtklassendiagramm Aufbau von VipProfile und der darin verwalteten Daten Modus Trusted Login ber den Admin Client konfigurieren Authentifizierung und Session Management Login Repositor
33. Autorisierungsdaten direkt in den Para metern bergeben werden Die andere M glichkeit ist diese Verwaltung zentral mithilfe von Account Informationen Login Informationen durchzu f hren die im Portal Manager API gespeichert sind Die Account Informa tionen sind zentral und k nnen falls es mehrere Repositories gibt von allen Repositories benutzt werden Hierdurch entsteht ein Single Sign On Mechanismus Systeme die Account Informationen speichern k nnen ebenfalls als Applications interpretiert werden Deshalb liegt es nahe diese auch in Repositories zug nglich zu machen Genau das ist im Portal Manager API umgesetzt Portal Manager API Programmierhandbuch 111 Kapitel 4 Repository Typen Repositories werden fur zwei Zwecke verwendet m Repr sentation einer Anwendung bzw des Datenbestands einer Anwendung prim rer Einsatz im Portal Manager API Ermittlung und Pr fung von benutzerspezifischen Account Informati onen Login Repositories F r den Sonderfall dass gerade die Account Informationen selbst den Datenbestand einer Anwendung darstellen kann eine Repository Imple mentation nat rlich f r beide Zwecke eingesetzt werden Login Repositories Login Repositories sind Repositories mit denen Account Informationen verarbeitet werden Im Portal Manager API gibt es zwei Login Reposito ries die die folgenden Datenquellen unterst tzen Account Informationen in einem LDAP Server DirectoryRepositor
34. Bottom up Strategie umsetzen 48 Livelink WCM Server Konzepte In den meisten F llen spielt eine externe Anwendung ausschlie lich die Rolle einer Datenquelle und senke Hierzu m ssen Sie entspre chende Repositories implementieren oder bereits existierende Repository Implementationen heranziehen Repositories sind wich tige im Allgemeinen die wichtigsten oder gar die einzigen Bestandteile einer Application Um neue Repository Implementationen zu erstellen k nnen Sie die schon existierenden Repositories erweitern oder auf Grundlage des abstrakten Basis Repository RepositoryImp1 neue entwickeln F r jede neue Anwendung ist die Entwicklung einer Application Klasse n tig Diese beschreibt die grundlegenden Funktionen und das grundlegende Verhalten der Anwendung Auf dieser Ebene sollten jedoch keine Funktionen zu Funktionseinheiten zusammen gefasst werden Sie erhalten eine neue Application Klasse sehr schnell wenn Sie von der mitgelieferten abstrakten Basisimplementation ApplicationImpl ableiten Ein wesentlicher Bestandteil jeder Application ist ein Repository oder mehrere Repositories F r die meisten Anwendungen m ssen Sie dar ber hinaus gar keine weiteren Funktionen entwickeln da die Anwendung durch das Repository schon ausreichend beschrieben ist Beispielsweise haben die Applications die verschiedene Aspekte von Livelink WCM Server implementieren keine weiteren Methoden als die der abstrakten Basisimpleme
35. Bundles Ein Internationalization Objekt kann beliebig viele Resource Bundles auf Basis beliebiger Locale Objekte benutzen Der Zugriff auf Ressourcen wird wie blich ber Schl ssel durchgef hrt wobei die Auswahl der Locale Objekte ber das aktuelle Locale der Session gesteuert wird Ein Schl ssel wird nacheinander f r jedes f r das Locale in Frage kommende Resource Bundle gepr ft bis eines der Resource Bundles einen Wert liefert Wenn Resource Bundles gleiche Schl ssel haben wird das Resource Bundle genommen das in der Datei application xml zuerst eingetragen ist Die Klasse Internationalization stellt Methoden zur Verf gung um lokalisierte Messages f r den Schl ssel zu erhalten m Locale spezifische Datums und Zahlenformate zu erhalten 122 Livelink WCM Server Klassen und Interfaces des Portal Manager API Die Klasse SessionBean Vollst ndiger Name de gauss vip portalmanager SessionBean Ein SessionBean verwaltet Benutzerprofile auf Grundlage der eindeu tigen Session ID Die Bezeichnung Session Bean bezieht sich auf ein Bean das eine sessionbezogene Benutzerverwaltung durchf hrt Dies sollte jedoch nicht mit den Session Beans verwechselt werden die Teil von Enterprise JavaBeans sind Eine Session ID kann entweder als String oder als HTT P Request angegeben werden Bevor ein Benutzer durch einen Anmeldevorgang authentifiziert wird wird er nur als anonymer Benutzer mit stark eingeschrankten Rechten gef
36. Das Interface RepositoryEntryIterator Vollst ndiger Name de gauss vip repository RepositoryEntryIterator Ein RepositoryEntryIterator ist eine Aufz hlung Uber die Schl ssel Datenwert Paare in einem RepositoryEntry Ein neuer Iterator steht per Definition vor dem ersten Paar Um auf die Paare zugreifen zu k nnen muss der Iterator f r das erste Paar und die darauf folgenden Paare mit einer der next Methoden weiterger ckt werden Die Klasse RepositoryMap Vollst ndiger Name de gauss vip repository RepositoryMap Die Klasse RepositoryMap erweitert die Klasse TupelMap insbeson dere um die M glichkeit Daten zu filtern zu sortieren und aufzuz hlen Statt jedoch Werte vom Typ Value zu speichern werden Werte vom Typ RepositoryEntry gespeichert Da ein RepositoryEntry auch von TupelMap abgeleitet ist ergeben sich zwangsl ufig mehrstufige Listen Dies ist in der folgenden Abbildung dargestellt Portal Manager API Programmierhandbuch 109 Kapitel 4 Key RepositoryEntry key1 entry1 key2 entry2 entry3 Key Value key1 value1 key2 value2 key3 key3 value3 key4 value4 ea Anah key4 entry4 keyn entryn Abb 29 Mehrstufige Schl ssel Wert Listen in der RepositoryMap Zum Filtern Sortieren und Aufz hlen der Daten einer Reposi toryMap existiert ein Iterator RepositoryIterator mit dem ein zuvor gefil terter oder sortierter Datenbestand durchlaufen we
37. Das VipObjectHandlerBean erweitert das VipObjectBean um den schreibenden Zugriff auf die Objekte der mit Livelink WCM Server verwalteten Website Das VipObjectHandlerBean ist die Schnitt stelle des Portal Manager API zum WCM Java API Die vorgesehenen Methoden sind fast identisch mit dem Methoden umfang des Interface ObjectHandler aus dem WCM Java API Der ObjectHandler ist die zentrale Instanz des WCM Java API um Mani pulationen an einer Website Uber das Programm vorzunehmen Alle im WCM Java API Programmierhandbuch beschriebenen Techniken Einschr nkungen Konstanten usw gelten somit auch f r das VipObjectHandlerBean Kenntnisse der Methoden des ObjectHandler sind somit unerl sslich Der Name der diesem Bean zugrunde liegenden Application ist VipObjectApplication Die Repositories die diese Application benutzen sind in den Konfigurationsdateien application xml und repository xml eingetragen Diese Repositories k nnen auf zwei Arten konfiguriert sein m durch Angabe des Namens eines Deploymentsystems Ein Deploymentsystem ist zust ndig f r jeweils genau eine Website und eine Datenhaltungssicht Edit QS Produktion Deshalb bestimmt man durch Wahl eines Deploymentsystems f r ein Repository genau welche Daten zur ckgegeben werden und welche Objekte betroffen sind Mit der Methode setRepositoryName String k nnen Sie angeben welches VipObjectHandlerRepository von diesem Bean benutzt werden soll um Operationen im WCM System a
38. M gliche Werte sind true verschl sselte Kommunikation false unverschl sselte Kommunikation vip installdir Das Installationsverzeichnis des WCM Systems Applications Anwendungen werden durch das Interface Application beschrieben Das Interface Application wird von der abstrakten Basisklasse ApplicationImpl implementiert Auf dieser Basis werden f r die Integra tion von Livelink WCM Server zwei konkrete Implementationen des Inter face Application bereitgestellt Diese beinhalten jedoch keine weiteren Methoden Neue das Interface Application implementierende Klassen f r andere externe Anwendungen sollten ebenfalls von der abstrakten Basisklasse abgeleitet werden Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm 116 Livelink WCM Server Klassen und Interfaces des Portal Manager API abstract class Base interface Application abstract class Applicationlmpl class VipUser Application class VipObject Application Abb 31 Die Application Klassen im Gesamtklassendiagramm Das Interface Application Vollstandiger Name de gauss vip portalmanager application Application Das Interface Application repr sentiert im Portal Manager API eine Anwendung Durch dieses Interface ist insbesondere vorgegeben dass eine Anwendung auf einem oder mehreren Repositories beruht die den Zustand und den Datenbestand einer A
39. Manager API basieren sind das Portal Manager API und WCM System Uber die Repository Schnitt stelle miteinander gekoppelt Wenn Sie eine Anwendung mit dem Portal Manager API programmieren verwenden Sie Beans um auf die Daten des WCM Systems zuzugreifen Das Bean fordert das ben tigte Repository von der Application an und stellt die Verbindung zum WCM System ber dieses Repository her Uber das Repository erhalten Sie dann die Objektdaten aus dem WCM System f r die Portal Manager API Anwendung Die Zuordnung zwischen Repositories und Applications nehmen Sie ber den Admin Client vor siehe Repository zu einer Appli cation zuordnen auf Seite 86 Es gibt mehrere Beans die bestimmte Services im WCM System anspre chen ber sie kann auf Daten der verwalteten Objekte ebenso zuge griffen werden wie auf administrative Daten Hierdurch wird der Zugriff auf Objektinhalte Objektmetadaten Benutzer Gruppen Rollen und Funkti onsbereichsdaten erm glicht Auch die Filterung und Sortierung ber den Datenbestand des WCM Systems wird unterst tzt 24 Livelink WCM Server Konzepte Portal Manager API und Deploymentsysteme Beim Zugriff einer Anwendung auf Objektdaten Uber ein Repository wird immer auf die Daten eines bestimmten Deploymentsystems zugegriffen In der Konfiguration jedes Repository Uber das auf Objektinhalte und Metadaten zugegriffen werden kann ist ein Deploymentsystem ange geben Wenn Sie Uber den Admin Client eine
40. P Eintrags der durch key referenziert wird Diese Attribute werden entsprechend dem in der Konfiguration des Repository festgelegten Mapping konver tiert wenn sie in den LDAP Verzeichnisdienst geschrieben oder von dort gelesen werden 146 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Die Methoden containsKey createEntry und loadEntry werden im Kontext des Repository Bindeprofils das durch die Parameter principal und credential spezifiziert ist ausgef hrt Deshalb lassen sich diese Methoden unabh ngig vom aktuell angemeldeten Benutzer ausf hren Vorausgesetzt wird dabei dass der Bindeprofil Benutzer ber ausrei chende Rechte im LDAP Verzeichnisdienst verf gt Die Methoden removeEntry und storeEntry werden im Kontext des aktuell angemeldeten Benutzers ausgef hrt sofern die Parameter principal changes und credential changes f r das Repository konfi guriert wurden Die Methode createNewUser Repository Name key data der Klasse VipUserBean erm glicht es in einem Schritt neue Benutzer anzu legen und zu Gruppen oder Rollen zuzuordnen Nachdem ein Benutzer einer Gruppe oder Rolle zugeordnet wurde m ssen die Daten der Gruppe oder Rolle aktualisiert werden Deshalb muss entweder der aktuell angemeldete Benutzer ber ausreichende Rechte f r diese Opera tion verf gen oder m ssen die Parameter principal changes und credential changes zusammen verwendet werden Beispiel f r das Anle
41. Programmierung mit dem Portal Manager API lt html gt lt head gt lt TITLE gt getSubElements lt TITLE gt lt head gt lt body gt lt This should be part of the Template Begin gt lt page import de gauss vip repository RepositoryEntry de gauss vip repository Repositorylterator de gauss lang KeySort de gauss lang StringValue gt lt jsp useBean id sessionBean class de gauss vip portalmanager SessionBean scope session gt lt jsp useBean id objBean class de gauss vip portalmanager VipObjectBean scope session gt lt objBean setRepositoryName VIPDEPLOYMENT_NAME A user has to be logged in otherwise the operations are executed in the content of Anonymous if sessionBean isLoggedIn request The request contains the necessary attributes for the login sessionBean checkLogin request gt lt This should be part of the Template End gt lt get the meta data of the object RepositoryEntry entry objBean getEntry VIPOID if entry null KeySort sort new KeySort new StringValue title get all subelements of the current object which are jsp topics RepositoryIterator it objBean getSubElements entry JSPTOPIC sort gt lt table gt lt while it hasNext RepositoryEntry e it nextEntry gt lt tr gt lt td gt Portal Manager API Programmierhandbuch 153 Kapitel 5 lt a href lt e g
42. Proxy Content Server 1 benachrichtigt Proxy Content Server 2 ber die nde rungen Auf allen benachrichtigten Servern startet das Deployment f r die ge nderten Objekte sodass die entsprechenden Seiten aktualisiert werden Ein solches verteiltes System richten Sie mithilfe der Option Benutzerdefinierte Installation im WCM Installationsprogramm ein siehe Livelink WCM Server Installationshandbuch 30 Livelink WCM Server Konzepte Um eine Website in diesem Szenario anzulegen starten Sie den Assis tenten f r neue Websites im Admin Client und legen Ihre Website mit der Option Benuftzerdefiniert an Content Server im Application Server starten Sowohl der Content Client als auch der Content Client Classic verwenden das Portal Manager API Um dieses API auch f r selbster stellte JSP Seiten zur Verf gung zu stellen ist es erforderlich einen Content Server im Kontext des Application Servers zu starten Content Server als Webanwendung Wenn f r den Content Server eine Webanwendung erzeugt wurde l uft der Content Server im Application Server Unterst tzt der verwendete Application Server den Servlet Standard 2 3 wird der Content Server automatisch zusammen mit der entsprechenden Webanwendung gestartet und gestoppt Unterst tzt der Application Server den Servlet Standard 2 2 werden die Webanwendung und der Content Server getrennt gestartet und gestoppt Verwenden Sie in diesem Fall die entsprechenden Skripte f r den
43. Seite Multicontent Seite platzieren auf Seite 154 Formularbasierte Objekterstellung siehe Abschnitt WCM Objekte ber ein HTML Formular erstellen auf Seite 158 Benutzer ber ein Portal in einem LDAP System anlegen Die Nutzung von Internetportalen erfordert in der Regel dass ein Benutzer seine Identit t angibt Dazu richtet sich der Benutzer im Portal ein Benutzerkonto mit seinen pers nlichen Daten ein ber dieses Konto kann der Benutzer das Aussehen des Portals den eigenen W nschen und Bed rfnissen anpassen Au erdem l sst sich steuern auf welche vom Portal bereitgestellten Inhalte der Benutzer zugreifen kann Die Benutzerdaten k nnen in einer Datenbank oder in einem LDAP Verzeichnisdienst gespeichert werden In diesem Abschnitt wird beschrieben wie sich mithilfe des DirectoryRepository aus dem Portal Manager API neue Benutzerkonten ber ein Portal in einem LDAP Verzeichnisdienst anlegen lassen Die dazu ben tigten Daten k nnen aus Anmeldeformularen bernommen werden So k nnen Portalbenutzer ihre Konten selbst anlegen und verwalten 140 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Es lassen sich auch JSP Applikationen zur Verwaltung von Benutzer konten entwickeln Derartige Web Applikationen bieten sogar potenziell mehr Funktionalit t als der Admin Client da sich in ihnen beliebige Daten speichern und verwalten lassen Voraussetzungen Damit ein Benutzer dessen K
44. Sicht zur ckgeschickt werden reject m Das Neuerzeugen eines bereits freigegebenen dynamischen Objekts das in der Produktionssicht statifiziert wurde f hrt dazu dass dieses Objekt in der Produktionssicht aktualisiert wird generatePage m Das L schen eines Objekts erfolgt in der Edit Sicht delete Wenn es sich um ein bereits freigegebenes Objekt handelt muss das Objekt anschlie end in der QS Sicht vernichtet werden destroy Wird in der QS Sicht das L schen allerdings abgelehnt reject ist das Objekt auch in der Edit Sicht wieder vorhanden Weitere Angaben zum Staging finden Sie im Content Client Benutzer handbuch Weitere Informationen zum VipObjectHandlerBean finden Sie im Abschnitt Die Klasse VipObjectHandlerBean auf Seite 128 Eine detaillierte Beschreibung der Methoden dieser Klasse liefert die Javadoc zum Portal Manager API 2 4 Integration externer Anwendungen Das Portal Manager API ist im Wesentlichen ein Framework das auch die Integration externer Anwendungen wie etwa E Commerce Anwen dungen zul sst Dabei spielen Themen wie Dynamisierung Personalisie rung und Korrelation mit Website Content eine herausragende Rolle Die Integration einer externen Anwendung ist relativ einfach und im Portal Manager API sehr gut vorbereitet Wenn Sie externe Anwendungen im Rahmen des gegebenen Frameworks implementieren m chten sollten Sie einige Designgrunds tze befolgen Diese lassen sich am leichtesten durch eine
45. Zeit eine Anfrage sendet Sonst tritt aufseiten der JSP Engine ein Timeout auf Der HTTP Session Mechanismus wird vom Portal Manager API f r das Session Management der WCM JavaBeans verwendet und garantiert gleichzeitig die WCM Authentifizierung f r eine bestimmte Session Authentifizierung Die Authentifizierung im Portal Manager API basiert auf dem Konstrukt des WCM Benutzers der durch folgende Eigenschaften charakterisiert ist eindeutiger Benutzername f r eine bestimmte Installation oder f r den LDAP Server der f r die Benutzerverwaltung verwendet wird Passwort Die Benutzerinformation f r die Autorisierung im Portal Manager API wird in einer LoginRepository Implementation gespeichert Es gibt verschie dene LoginRepository Implementationen wie z B VipUserRepository Je nach Einsatz des Portal Manager API gibt es verschiedene Authentifi zierungsmodi Authentifizieren ber HTTP Request Parameter Die WCM Benutzerparameter werden ber die HTTP Request Para meter userName und userPassword in der HTTP Anfrage der JSP Engine definiert In diesem Modus werden die Authentifizierungspa rameter durch den Einsatz eines HTML Formulars verf gbar gemacht das die geforderten Parameter liefert 134 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Authentifizieren ber die HTTP Standardauthentifizierung Die WCM Benutzerparameter werden ber den Authentifizierungs mechanismus des Web Serv
46. a meter einer Application festlegen auf Seite 75 Einstellungen von Applications bearbeiten siehe Abschnitt Allge meine Einstellungen von Applications auf Seite 85 m bersicht ber zugeordnete Repositories Zuordnen neuer Reposito ries und Aufheben von Zuordnungen siehe Abschnitt Repository zu einer Application zuordnen auf Seite 86 Application l schen siehe Abschnitt Application l schen auf Seite 88 Application zu einem Content Server zuordnen siehe Abschnitt Application zu einem Content Server zuordnen auf Seite 89 Application anlegen So legen Sie eine Application an 1 W hlen Sie Konfiguration Applications 2 W hlen Sie Neue Application aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Symbol zum Anlegen einer Application 3 Folgen Sie den Anweisungen des Assistenten 70 Livelink WCM Server Portal Manager API verwalten Basisdaten festlegen Im ersten Dialog legen Sie die Basisdaten der Application fest neue Application x Basisdaten Geben Sie der Application einen eindeutigen Namen Ordnen Sie ihr CA au erdem eine Java Klasse zu tragen Sie einen logischen Namen ein By und w hlen Sie eine Sprache aus N Name Klassenname Logischer Name Sprache Deutsch Deutschland v Abbrechen Abb 14 Basisdaten der Application festlegen Name Der Name der Application muss eind
47. alt das Kapitel Hinweise zu LDAP Kapitel 4 Klassen und Interfaces des Portal Manager API enthalt eine Beschreibung der Programmierschnittstelle die f r die Erstel lung von JSP Seiten bekannt sein muss Kapitel 5 Hinweise zur Programmierung mit dem Portal Manager API bietet Ihnen eine Einf hrung in die Program mierschnittstellen des Portal Manager API sowie einige Anwendungsbeispiele Im Anhang A Metadatenschemata sind die Metadatenschemata der Versionen 5e und 8 gegen bergestellt Anhang B Caching beschreibt das Caching Verhalten von des Portal Manager API Die hier beschriebene Programmierschnittstelle ist Bestandteil von Livelink WCM Server Zus tzlich zum vorliegenden Programmierhand buch k nnen Sie Informationen aus folgenden Quellen beziehen Livelink WCM Server Installationshandbuch Dieses Dokument beschreibt die Installation des WCM Systems und gibt Konfigurati onshinweise f r Webserver und Application Server Livelink WCM Server Administratorhandbuch Dieses Dokument beschreibt die Konfiguration und Administration eines WCM Systems aus der Sicht des Administrators Portal Manager API Programmierhandbuch 13 Kapitel 1 WCM Java API Programmierhandbuch Dieses Dokument enth lt Informationen Uber Interfaces Klassen und Methoden der Java Programmierschnittstelle WCM Java API mit der die Funktionalitat der WCM Server ber externe Programme genutzt werden kann m Javadoc Hier
48. andbuch 57 Kapitel 3 Parameter eines Repository festlegen Die Konfiguration von Repositories erfolgt Uber Parameter Art und Anzahl der Parameter hangen von den Funktionen des Repository ab Parameter k nnen als Knoten oder einzelne Parameter definiert werden In Knoten werden Parameter desselben Typs zusammengefasst Knoten k nnen wiederum weitere Knoten enthalten Im Unterschied zu Parame tern haben sie keinen Wert So definieren Sie Parameter f r ein Repository 1 W hlen Sie Konfiguration gt Repositories gt Repository Name gt Parameter 2 W hlen Sie Neuer Parameter aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Al Symbol zum Hinzuf gen eines Parameters aC Der Dialog Neuer Knoten wird ge ffnet Breuer noten x O Knoten Parameter Name max records Wert 100 eK Abbrechen Abb 10 Anlegen eines Parameters f r ein Repository 3 Wahlen Sie hier ob Sie einen Knoten oder einen Parameter anlegen m chten 58 Livelink WCM Server Portal Manager API verwalten Wenn Sie dem Repository viele Parameter zuordnen m chten ist es sinnvoll die Parameter zu gruppieren Dazu legen Sie zunachst Knoten an und dann unter den Knoten jeweils einen oder mehrere Parameter 4 Wenn Sie die Option Knoten gewahlt haben geben Sie einen eindeutigen Namen f r den neuen Knoten ein Haben Sie die Option Parameter gew hlt geben Sie eine
49. ann nur auf Applications zugreifen die ihm zugeordnet sind ber Konfiguration gt Server gt Name des Content Servers Applications erhalten Sie eine bersicht ber die Applications die diesem Server bereits zugeordnet sind Die Applications werden im rechten Fensterbereich in einer Liste angezeigt Konfiguration A Ko 5 Name ii gt Poole ClickStreamApplication Eigene Verbindungstypen LivelinkApplication A Server a Admin VipHCLApplication Master_Content IVIPHTMLClTientApplieation w Websites VipObjectApplication A Deploymentsysteme VipUserApplication Pools A 9 Agenten amp Dienste Pfade f r Secure Access a Applications Abb 21 Zu einem Content Server zugeordnete Applications Zuordnung einer Application zu einem Content Server herstellen So ordnen Sie eine Application zu einem Content Server zu der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft 1 W hlen Sie Konfiguration Server Name des Content Servers Applications 2 Wahlen Sie Application zuordnen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Symbol zum Zuordnen einer Application zu einem Content Server Portal Manager API Programmierhandbuch 89 Kapitel 3 Der Dialog Application ausw hlen wird ge ffnet Er zeigt eine Liste der noch nicht zugeordneten Applications 3 Markieren Sie die gew n
50. as betreffende Bean wird im Admin Client festgelegt siehe Abschnitt 3 2 Applications verwalten ab Seite 69 Hinweis Das standardm ige Locale f r das SessionBean wird ber die Standardsprache des angemeldeten WCM Benutzers festgelegt Vorschlag f r die Internationalisierung einer Portal Manager API Anwendung Basierend auf der Architektur die in Abschnitt Architektur des Portal Manager API und Intemationalisierung auf Seite 171 beschrieben wurde k nnte eine Internationalisierung nach der folgenden Strategie durchgef hrt werden Der Client der die Anwendung verwendet ist der Empf nger aller Informationen bzw des gesamten Contents Daher gibt er seine bevorzugte Sprache bzw Lokalisierung an Alle anderen System komponenten m ssen ihr Verhalten entsprechend der Auswahl des Clients anpassen 172 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Diese Strategie f hrt zu den folgenden technischen Empfehlungen Der Benutzer kann seine bevorzugte Sprache im Browser festlegen Diese Pr ferenz wird im Header jeder HTTP Anfrage gesendet und kann vom Webserver bzw von der JSP Engine ermittelt werden Die Sprachauswahl gem RFC 1766 und ISO 639 kann dem Servlet Request entnommen werden Die URL kann dynamisch erstellt werden und auf den entspre chenden Content verweisen F r die Internationalisierung von dynamischem Content der von Applications verf gbar g
51. assen und Beans vermittelt Ihnen Kapitel 4 Klassen und Interfaces des Portal Manager API detaillierte Informationen entnehmen Sie bitte der Javadoc zum Portal Manager API Dynamischer Content Das Portal Manager API eignet sich f r die Erstellung und Verwaltung dynamischer Inhalte einer Website so genannter Content die charakte ristisch f r Unternehmensportale sind Im Gegensatz zu statischem Content der schon w hrend der Erstellung durch einen Bearbeiter oder Autor festliegt wird der Inhalt von dynamischem Content komplett oder in Teilen erst zur Laufzeit erzeugt Es besteht so die M glichkeit auf die aktuelle Situation und den aktuellen Kontext w hrend der Nutzung der Website zu reagieren Portal Manager API Programmierhandbuch 33 Kapitel 2 Zwar stellt das in Livelink WCM Server umgesetzte Vorlagenkonzept im Ansatz auch einen Schritt zur Dynamisierung dar da der Inhalt durch die Verbindung zweier oder mehrerer Content Objekte erstellt wird Das Ergebnis ist jedoch wiederum statisch passt sich also dem aktuellen Einsatzkontext nicht mehr an Echte Dynamisierung erm glicht dagegen die Kontrolle des Contents auch zur Laufzeit also in dem Moment in dem eine Seite von einem Benutzer angefordert wird Die M chtigkeit l sst sich an besonders typi schen Anforderungen moderner Websites beschreiben Diese werden im Folgenden anhand einer Auswahl h ufiger und typischer Einsatzf lle des Portal Manager API vorgest
52. ationalisie rungsobjekt das mit der SessionApplication assoziiert ist vorgenommen Alle Methoden die f r die Unterst tzung des Portal Manager API ben tigt werden werden von der Basisklasse SessionApplication zur Verf gung gestellt und m ssen nicht von den abgeleiteten Bean Klassen imple mentiert werden Portal Manager API Programmierhandbuch 165 Kapitel 5 5 4 Gestaltung einer JSP Seite Fur die Gestaltung einer JavaServer Page JSP Seite stehen Ihnen verschiedene Modelle zur Verf gung In der JSP Modell 1 Architektur ist die JSP Seite daf r verantwortlich eine Anfrage zu bearbeiten und eine Antwort an den Client zu schicken Der Zugriff auf die Daten wird von den JavaBeans durchgef hrt Dieses Modell f hrt zu einer hohen Anzahl von Scriptlets und oder Java Code in der JSP Seite Dadurch wird es erschwert diese Quellen zu pflegen Fehler in ihnen zu beseitigen oder sie erneut zu verwenden Au erdem gibt es keine klare Trennung zwischen der Logik und der Pr sentation Dadurch ist es schwierig die Aufgaben zwischen Java Entwickler und Webdesigner aufzuteilen Das JSP Modell 2 verwendet das MVC Entwurfsmuster Model View Controller Hier wird eine Controller JSP Seite oder ein Servlet einge setzt die f r das Bearbeiten der Anfrage und das Erzeugen der Beans verantwortlich sind Die JavaBeans Portal Manager API Klassen sind das Model das Zugriff auf die Datenquellen hat Der Controller entscheidet in Abh ng
53. bb 27 Die Klasse RepositoryMap im Gesamtklassendiagramm Portal Manager API Programmierhandbuch 107 Kapitel 4 In der folgenden Abbildung sind die Klassen zusammengetragen mit denen im Portal Manager API die Datenspeicherung durchgefuhrt wird Das Diagramm stellt nicht die Vererbungshierarchie in den Vordergrund sondern die strukturellen Beziehungen icherschl ssel interface benutzt als SPER BEE Sir Key rm interface m i perstat dS In ce a nl ssel i chluss interface Beast sana re De ee interface Peichert Value Abb 28 Strukturelle Beziehungen der komplexen Datentypen Die Klasse RepositoryEntry Vollst ndiger Name de gauss vip repository RepositoryEntry Objekte der Klasse RepositoryEntry sind die Werte die in einer RepositoryMap gespeichert werden Ein RepositoryEntry istim Wesentlichen auch eine Map da die Klasse von der Klasse TupelMap abgeleitet ist Durch Speicherung eines Objekts dieser Klasse in einer RepositoryMap entsteht eine zweistufige Datenstruktur Eine Eigenschaft der Klasse RepositoryEntry gegen ber der Klasse Tupe1Map besteht darin eine Schnittstelle zu einem Directory Service 108 Livelink WCM Server Klassen und Interfaces des Portal Manager API via JNDI zu liefern Ein RepositoryEntry kann sowohl mit einem JNDI Datenbestand initialisiert werden wie auch sich selbst als JNDI Datenbestand pr sentieren Die entsprechende Schnittstelle ist das JNDI Attributes Interface
54. cht werden Im Unterschied zu einem Master Content Server haben Proxy Content Server jedoch nur lesenden Zugriff auf die Daten Sollen Website Daten ber einen Proxy Content Server bearbeitet werden wendet sich der Proxy Content Server an den Master Content Server Dieser sperrt das Objekt f r weitere schreibende Zugriffe und speichert nach Abschluss der Bearbeitung die ge nderten Objekte in der Datenhaltung Anschlie end informiert der Master Content Server alle angeschlossenen Proxy Content Server der Website dar ber dass sich 26 Livelink WCM Server Konzepte das WCM Objekt geandert hat Auf diese Weise bleiben Ihre Website Inhalte konsistent Fur die Verteilung der generierten Seiten im WCM System sind die so genannten Deploymentsysteme zustandig Das Portal Manager API steht auf allen Content Servern zur Verf gung die im Kontext einer JSP Engine bzw als Webanwendung in einem Appli cation Server laufen F r die Nutzung des Content Clients und des Content Clients Classic ist ein derartiger Content Server erforderlich Bitte beachten Sie f r das Einrichten von Content Servern die im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server laufen folgende Hinweise Der Zugriff auf die Deploymentsysteme einer Website die unter schiedliche Datenhaltungen verwenden muss ber verschiedene Content Server erfolgen Die verf gbaren Sichten auf die Daten einer Website und m gliche Aktionen h ngen
55. d die Versorgung mit Initialisierungsdaten bei konkreten Application Implementationen erheblich vereinfacht Beans Die Beans die im Portal Manager API zur Verf gung gestellt werden k nnen als Instanzen in JSP Skripten eingesetzt werden Mit ihnen k nnen beliebige Anwendungen ber HTML Seiten bedient werden Als Scope f r die Beans sollte Session Scope eingestellt sein Beans bedienen sich einer Application die die eigentliche Anwendung repr sen tiert Die oberste aller Bean Klassen hei t aus diesem Grund SessionApplication Portal Manager API Programmierhandbuch 119 Kapitel 4 Hinweis Alle Beans des Portal Manager API wurden f r den Einsatz mit Session Scope entwickelt Bei Verwendung anderer Scopes insbesondere Request und Page besteht die Gefahr viele CA Lizenzen CA concurrent author zu verbrauchen die erst wieder frei gegeben werden wenn die zugeh rigen Context IDs in Livelink WCM Server ung ltig werden Beans enthalten High Level Methoden auf Basis der Application und Repository Klassen Diese Methoden fassen typische Einsatzf lle einer Anwendung auf einfach benutzbare und effiziente Weise zusammen Die abstrakte Implementation in SessionApplication sieht insbeson dere bereits einfache M glichkeiten zur Internationalisierung von Anwen dungen vor So k nnen Benutzer unterschiedlicher Herkunft eine Anwendung in landes blicher Sprache und mit landes blichen Normen bediene
56. den Wert C sar der dritte den Wert Anton Wenn man den Schl ssel A angibt ordnet die Klasse KeySort die RepositoryEntry Objekte in der folgenden Reihenfolge dritter RepositoryEntry erster RepositoryEntry zweiter RepositoryEntry Ein Beispiel f r die Verwendung der Klasse KeySort finden Sie im Code des Abschnitts Dynamische Navigationselemente erzeugen ab Seite 150 Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm 106 Livelink WCM Server Klassen und Interfaces des Portal Manager API interface Serializable interface interface Filter Sort Abb 26 Die Filterungs und Sortierungsklassen im Gesamtklassendiagramm RepositoryMap und zugeh rige Klassen Die Klasse RepositoryMap z hlt zu den universellsten der grundle genden Datentypen im Portal Manager API Die zu RepositoryMap geh renden Klassen d rfen nicht mit den Klassen verwechselt werden die das Interface Repository implementieren Obwohl sie thematisch eng mitein ander verkn pft sind besteht zwischen ihnen keine Vererbungsrelation Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm class TupelMap interface RepositoryEntry amp Iterator supplies class dass RepositoryEntry RepositoryMap interface Repository U Iterator supplies A
57. die Deploymentsysteme verschiedene Datenhaltungen benutzt Das Portal Manager API kann nicht auf beide Edit Deploymentsysteme Portal Manager API Programmierhandbuch 25 Kapitel 2 zugreifen da dazu der gleichzeitige Zugriff auf die Daten einer Website uber verschiedene JDBC Pools erforderlich ware In einem solchen Fall sind zwei Content Server erforderlich die im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server laufen Das Portal Manager API in ein WCM System einbinden Die Server werden in die zwei Hauptkategorien Master und Proxy unter teilt In jedem WCM System gibt es einen Master Administrationsserver und einen bzw mehrere Master Content Server Der Master Administrationsserver steuert die Benutzerverwaltung und bernimmt Konfiguration System und Lizenzverwaltung Der Zugang zum Administrationsserver erfolgt ber den Admin Client Der Master Content Server verwaltet eine oder mehrere Websites wobei eine Website immer genau einem Master Content Server zuge ordnet ist Nur an einem Master Content Server k nnen nderungen an Inhalt und Status von WCM Objekten durchgef hrt werden Auf dem Master Content Server stehen immer alle Datenhaltungssichten Edit QS und Produktion zur Verf gung Zus tzlich zum Master Content Server k nnen Sie in einem WCM System Proxy Content Server einrichten auf denen die Daten der Website s mithilfe entsprechender Deploymentsysteme ebenfalls verf gbar gema
58. die Inhalte bzw die Metadaten eines Objekts andere f hren zu einer nde rung des Objektstatus Damit wird das mehrstufige Staging von Livelink WCM Server abgebildet Dieses Staging entspricht dem Lebens zyklus eines WCM Objekts der im nachfolgenden Diagramm dargestellt ist 46 Livelink WCM Server Konzepte Produktions sicht directRelease release reject submit oder delete Koz sep Abb 5 Der Lebenszyklus eines WCM Objekts Der Lebenszyklus eines WCM Objekts kann folgende berg nge enthalten die durch die Methoden des VipObjectHandlerBean abge bildet werden Das Objekt wird in der Edit Sicht angelegt create Um den Inhalt des Objekts zu pflegen kann es in der Edit Sicht ausgeliehen und in einem Editor bearbeitet werden checkOut Nach dem ndern muss das Objekt in der Edit Sicht wieder zur ck geben werden checkIn In die QS Sicht gelangt das Objekt dadurch dass es in der Edit Sicht zur Qualit tssicherung vorgelegt wird submit In der QS Sicht kann das Objekt freigegeben und damit in die Produktionssicht bertragen werden release In der Edit Sicht kann das Objekt direkt freigegeben werden wenn f r das Objekt das Metadatum Direkte Freigabe gesetzt ist und das Objekt mit dieser Einstellung bereits einmal freigegeben wurde directRelease Portal Manager API Programmierhandbuch 47 Kapitel 2 m Das Objekt kann in der QS Sicht aber auch abgelehnt und an die Edit
59. duktion Vertrieb und Dekompilierung eingeschr nkt wird Weder der Erhalt noch der Besitz dieses Dokumentes erm chtigt Sie dessen Inhalte ganz oder teilweise auf Papier elektronisch oder einem anderen Medium zu reproduzieren weiterzugeben oder anderen den Zugang darauf zu erm glichen Kein Teil dieses Dokumentes darf in irgendeiner Form und Weise ohne vorherige schriftliche Zustimmung der Gauss Interprise AG oder Gauss Interprise Inc reproduziert werden Dar ber hinaus gelten f r diese Dokumentation die Bestimmungen des Softwarelizenzvertrags Alle Warenzeichen oder Handelsmarken die in diesem Dokument erw hnt wurden sind Eigentum der entsprechenden Firmen http www gaussvip com Programmversion Livelink Web Content Management Server Content Server 9 5 0 Dokumentenversion De 01 Erscheinungsdatum Januar 2005 Inhaltsverzeichnis Abbildungsverzeichnis 6 Tabellenverzeichnis 8 Kapitel 1 Einleitung 11 1 1 Hinweise zu diesem Handbuch 12 1 2 Typographische Konventionen 16 Kapitel 2 Konzepte 19 2 1 Architektur des Portal Manager API 19 2 2 Integration des Portal Manager API in das WCM System 24 2 3 Programmierkonzepte 33 2 4 Integration externer Anwendungen 48 Kapitel 3 Portal Manager API verwalten 53 3 1 Repositories verwalten 55 3 2 Applications verwalten 69 3 3 LDAP 91 3 4 Fehlersuche 94 Kapitel 4 Klassen und Interfaces des Portal Manager API 99 4 1 Klassendiagramme und Klassen beschreibungen 99 4 2 Grundlegende
60. e Der Startknoten unter dem die Eintr ge f r die Rollen des Benutzers gesucht werden Wenn das Attribut nicht gesetzt ist wird der Wert von base f r dieses Attribut genommen search scope Beschreibt den Suchbereich unterhalb des in dn pattern angegebenen Startknotens SUBTREE_SCOPE sucht im ganzen Unterbaum ab BASE ONELEVEL_SCOPE sucht nur in der Ebene direkt unter BASE url Die durch Leerzeichen separierte Liste von URLs zu Directory Servern Zun chst wird der erste LDAP Server angesprochen Schl gt dies fehl wird versucht den zweiten anzusprechen usw Beispiel ldap 1dap company example 389 ldap ldap2 company example 389 62 Livelink WCM Server Portal Manager API verwalten Repository Parameter Beschreibung DoorwaysRepository alias authentication Ein Alias fur das DoorwaysRepository Wenn kein Alias spezifiziert ist wird der Name des DoorwaysReposi tory verwendet um die Verbin dung zum Doorways Server aufzubauen Dieser Parameter ist optional Die Authentifizierungsmethode Es sind die Werte LOGIN SESSION und CONFIG m glich LOGIN F r die Klasse DoorwaysBean muss ber die Methode DoorwaysBean setLogin eine explizite Anmeldung erfolgen SESSION Es werden die Anmeldedaten aus der Klasse SessionBean verwendet CONFIG Alle Benutzer werden mit den Daten eines Standardbenutzers angemeldet Diese Daten werden in den Parametern user und pwd
61. e das Layout der Multicontent Seite auf einem Blatt Papier Da es sich empfiehlt die Content Objekte mithilfe von HTML Tabellen anzuordnen sollten Sie Position und Gr e der Tabellen bereits jetzt genau festlegen Realisierung Wenn Sie mit der Erstellung des Layouts fertig sind gehen Sie folgender ma en vor 1 Legen Sie ein JSP Objekt an 2 Setzen Sie Ihren Entwurf mithilfe von HTML Elementen um und kontrollieren Sie das Ergebnis im Browser Nehmen Sie gegebenen falls nderungen vor bis das Ergebnis Ihren Vorstellungen entspricht Dazu m ssen Sie die Seite m glicherweise mehrmals ausleihen und zur ckgeben 3 F gen Sie den JSP Code in die Seite ein Dabei sollten Sie darauf achten die JSP Elemente so weit wie m glich vom HTML Code zu trennen Dies erh ht die bersichtlichkeit einer JSP Seite entschei dend und erm glicht es Ihnen so sp ter erforderliche nderungen leichter umzusetzen Das folgende Code Beispiel enth lt den JSP Code f r eine Multicontent Seite in der die verschiedenen M glichkeiten beim Laden des Contents aufgezeigt werden Portal Manager API Programmierhandbuch 155 Kapitel 5 lt html gt lt head gt lt TITLE gt multiContent lt TITLE gt lt body gt lt This should be part of the Template Begin gt lt page import de gauss vip repository RepositoryEntry de gauss vip portalmanager converter HTMLContentConverter de gauss vip portalmanager ContentHandler
62. e den Wert f r die minimale Gr e entsprechend hoch Sie verhindern so ein fr hzeitiges Entfernen der Objekte aus dem Cache Die maximale Gr e muss entsprechend angepasst werden Insbeson dere auf Content Servern mit Produktionssicht sollte versucht werden einen Gro teil der Objekte w hrend des Betriebs im Cache zu halten B 4 Cachen von RepositoryEntry Objekten Die Darstellung der Metadaten am Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft die sogenannte externe Repr sentation wird durch RepositoryEntry Objekte realisiert Die externe weicht teilweise von der internen Darstel lung der Daten ab Um den Konvertierungsaufwand so gering wie m glich zu halten hat jedes im Cache befindliche Objekt einen eigenen Cache f r die Speicherung der RepositoryEntry Objekte Sobald ein Objekt aus dem Cache entfernt wird werden auch die entsprechenden RepositoryEntry Objekte entfernt Portal Manager API Programmierhandbuch 189 Anhang B Wenn der Content Server ein RepositoryEntry anfordert pr ft das WCM Objekt ob die gew nschte Attributkombination in seinem Cache bereits vorhanden ist und liefert die Daten direkt von dort zur ck Andern falls werden die gew nschten Daten entsprechend aufbereitet wobei sie dazu gegebenenfalls aus der Datenbank nachgeladen werden m ssen Die Attributkombination wird anschlie end mit ihren Werten im Cache abgelegt Hieraus ergibt sich
63. e der Website gelangt kann er eine Sprache ausw hlen z B Englisch Nach Auswahl der Sprache wird eine JSP Seite aufgerufen die alle erforderlichen OIDs in der Session setzt wie z B die der Startdateien f r die einzelnen Bereiche Wenn ein Bereich ausgew hlt wird erh lt das Template die OID aus der Session und zeigt die entsprechenden Objekte an 174 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Applications und Internationalisierung Das Portal Manager API bietet die M glichkeit benutzerspezifische Appli cations in das API zu integrieren Damit Sie die Internationalisierungsun terst tzung des Portal Manager API nutzen k nnen f hren Sie die folgenden Schritte durch 1 Lokalisieren Sie alle Ressourcen entsprechend den Standards die in Java 2 PropertyResourceBundle usw festgelegt sind 2 Ordnen Sie der benutzerspezifischen Application die Ressourcen und Parameter zu siehe dazu den Abschnitt 3 2 Applications verwalten ab Seite 69 WCM Beans und Internationalisierung Alle WCM Beans verf gen ber eine integrierte Unterst tzung f r die Internationalisierung Die Verwendung wird durch die folgenden Methoden erm glicht Die aktuelle Einstellung des Locale das f r ein bestimmtes Bean g ltig ist wird durch public java util Locale getLocale zur Verf gung gestellt Das Locale f r ein bestimmtes Bean kann gesetzt werden durch public void setLocale java util Locale locale
64. ealisiert werden Die Benutzeroberflache besteht aus mehreren Kompo nenten die in einen Workflow eingebunden werden und auf die jeweilige Anwendung abgestimmt sind In der Regel werden folgende Kompo nenten ben tigt bersichtsseite listet die erstellten Formularinstanzen auf und stellt Schaltfl chen f r die an diesen WCM Objekten ausf hrbaren Akti onen bereit Eingabeformular dient zum Anlegen von Formularinstanzen und stellt Eingabefelder Auswahlfelder etc zur Erstellung der XML Objekte bereit nderungsformular dient zur nderung bestehender Formularin stanzen Die Feldinhalte bzw der Zustand der Formularinstanzen werden editierbar dargestellt Ansichtsseite dient zur Aufbereitung der Feldinhalte und des Zustands der Formularinstanzen f r die Darstellung VipObjectHandlerBean f hrt u a die folgenden Aktionen auf den Formularinstanzen aus Anlegen ndern m Vorlegen Ablehnen Freigeben m L schen Das Eingabeformular wird von der bersichtsseite aus aufgerufen Der Benutzer gibt die Formulardaten ein und schickt das Formular ab Der Inhalt des Formulars wird an die JSP Seite zum Anlegen bergeben Portal Manager API Programmierhandbuch 159 Kapitel 5 Diese extrahiert die Formulareingaben aus der HTTP Anfrage und erzeugt daraus die Metadaten und den Content f r die Formularinstanz Die Formularinstanz muss anschlie end als WCM Objekt angelegt und ihr Content geschrieben
65. ebDAV Schnittstelle abgefragt werden k nnen Standardwert oid title subtitle description target_group keywords VipHCLApplication default profile user Gibt die Kennung des WCM Benutzers an dessen Standardprofil als Vorlage f r die Standardprofile neuer Benutzer verwendet wird Standardwert leer d h es gibt keine Vorlage f r Standardprofile embedded type names Enth lt eine durch Kommas getrennte Liste von Objekttypen Beim Anlegen eines WCM Objekts werden Objekte dieses Typs als eingebettete Objekte betrachtet Ist dieser Parameter nicht gesetzt wird die folgende Liste als Standardwert verwendet ETC GIF JAVASCRIPT JPG PNG 78 Livelink WCM Server hcl absolute servlet hcl root Portal Manager API verwalten Gibt die absolute URL an unter der das Controller Servlet des Content Clients angesprochen wird Das Controller Servlet ist f r die Steuerung des Content Clients zust ndig Beispiel http wcemserver company example hclservlet Gibt die absolute URL an unter der die Startseite des Content Clients ange sprochen wird Beispiel http wcmserver company example cmsclient hcl servlet url Gibt an unter welchem Namen das Controller Servlet des Content Clients angesprochen werden soll Das Cont roller Servlet ist f r die Steuerung des Content Clients zust ndig Standardwert hclservlet Portal Manager API Programmierhandbuch 79 Kap
66. eichnungen Pfade zu Verzeichnis Laufwerk Verzeichnis D WCM sen Namen von Dateiname admin bat Dateien und Ver zeichnissen Zitate aus Programm Code Zitate lt head gt code oder Konfigu lt title gt heading rationsdateien lt title gt lt head gt Variablen d h Variable WCM Platzhalter f r Installationsver bestimmte Elemente zeichnis Wichtige Hinweise und Warnungen stehen in grauen K sten Diese Informationen sollten Sie unbedingt lesen um Fehler bei der Nutzung und Verwaltung von WCM Systemen sowie Datenverluste zu vermeiden 16 Livelink WCM Server Einleitung Portal Manager API Programmierhandbuch 17 18 Livelink WCM Server KAPITEL 2 Konzepte Dieses Kapitel beschreibt die Einbindung des Portal Manager API in ein WCM System AuRerdem werden die allgemeinen Konzepte der Programmierung mit dem Portal Manager API dargestellt 2 1 Architektur des Portal Manager API Die Funktionalitat des Portal Manager API ergibt sich aus dem Zusam menwirken der verschiedenen Komponenten eines WCM Systems Dazu geh ren insbesondere m die Server z B Master Admin Server Master Content Server Proxy Content Server die im WCM System verwalteten Websites m die Session Beans und anderen Klassen des Portal Manager API die JSP Seiten die diese Schnittstellen nutzen Der interne Aufbau des Portal Manager API kann durch ein einfaches Schichtenmodell beschrieben werden s
67. eiden sich von der Javadoc Dokumentation Die Javadoc zum Portal Manager API enthalt ausfuhrliche Informationen zu samtlichen Klassen und Interfaces sowie die dazugeh rigen Methoden Portal Manager API Programmierhandbuch 101 Kapitel 4 4 2 Grundlegende Klassen Alle mit dem Portal Manager API ausgelieferten Klassen verwenden eine Reihe von grundlegenden Klassen die sich in Gruppen zusammenfassen lassen m Basisdatentypen Filterung und Sortierung RepositoryMap und zugeh rige Klassen Repositories Diese vier Gruppen werden in diesem Abschnitt beschrieben Zur Uber sicht ist jeweils ein Klassendiagramm abgebildet das den entspre chenden Ausschnitt aus dem Gesamtdiagramm zeigt Die grundlegenden Klassen liefern den wichtigen algorithmischen und datentechnischen Unterbau des Portal Manager API Darin sind so wesentliche Eigenschaften wie Vergleichbarkeit Filterbarkeit und Sortier barkeit inbegriffen Die h chste Abstraktionsstufe wird durch die Reposito ries erreicht Da alle grundlegenden Klassen direkt oder indirekt in Session Beans eingesetzt werden ist die Kenntnis dieser Klassen und der damit verfolgten Konzepte wichtig Basisdatentypen Alle Attributschl ssel eines WCM Objekts implementieren das Interface Key Die Attributwerte implementieren das Interface Value Dieses Inter face erweitert wie in Abbildung 25 Die grundlegenden Klassen im Gesamtklassendiagramm auf Seite 105 dargestellt die Inte
68. einen Parameter aus der Konfiguration einer Application zu entfernen markieren Sie gew nschten Parameter im rechten Fensterbereich W hlen Sie dann Parameter l schen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol af Symbol zum L schen eines Parameters Allgemeine Einstellungen von Applications So bearbeiten Sie die Einstellungen einer Application 1 W hlen Sie Konfiguration Applications 2 Markieren Sie die gew nschte Application im linken Baum Im rechten Fensterbereich werden die Einstellungen auf zwei Regis tern angezeigt Portal Manager API Programmierhandbuch 85 Kapitel 3 Die Angaben auf dem Register Basisdaten werden beim Anlegen der Application gemacht Sie k nnen nachtr glich alle Einstel lungen mit Ausnahme des Namens andern Auf dem Register Ressourcen k nnen Sie die Einstellungen f r den Zugriff auf Java Ressourcen ndern 3 Nehmen Sie die gew nschten nderungen vor 4 Klicken Sie auf die Schaltfl che bernehmen Repository zu einer Application zuordnen ber Konfiguration Applications Application Name gt Repositories erhalten Sie eine bersicht ber die Repositories die dieser Application bereits zugeordnet sind Die zugeordneten Repositories werden im rechten Fensterbereich in einer Liste angezeigt Konfiguration Name v Pools ClickStrearmRepository ft Eigene Verbindungstypen Server yy Websites
69. ellt Die Szenarien sind als Beispiele zu verstehen der Einsatz des Portal Manager API ist keinesfalls auf die genannten Beispiele beschr nkt Navigationselemente Unter Navigation wird zun chst einmal die M glichkeit verstanden die Einordnung der aktuellen Seite in ihren Kontext zu visualisieren damit der Benutzer den Kontext schnell erfassen kann Dar ber hinaus erm glicht die Navigation einem Benutzer durch Hyperlinks einen schnellen unkom plizierten Wechsel zu assoziiertem Content etwa zu themenverwandten Seiten oder zu Seiten die in der hierarchischen Struktur benachbart sind Auch Sitemaps geh ren zu den Navigationselementen sie bereiten jedoch im Allgemeinen nicht den Kontext der aktuellen Seite sondern Informationen ber die gesamte Website auf Navigationselemente k nnen auf sehr unterschiedliche Art in einer Seite auftreten Denkbar sind etwa animierte Bestandteile die Navigationsele mente als Men s oder aufklappbare Baumstruktur pr sentieren Nat rlich k nnen Navigationselemente auch mit dem Look and Feel einer Website gestaltet werden damit sie sich in das Gesamtkonzept der Website einf gen 34 Livelink WCM Server Konzepte Im WCM System stehen allein durch die Speicherung von Metadaten zu jedem Content Objekt schon gen gend Informationen f r eine Navigation zur Verf gung So werden zu jedem Content Objekt diejenigen Objekte gespeichert die per Hyperlink erreichbar sind sowie die Objekte von d
70. emacht wird muss Folgendes gelten m Die JavaBeans bzw Applications m ssen die Internationalisie rung unterst tzen Eine JSP Seite die ein bestimmtes Bean oder eine bestimmte Komponente instanziiert muss das Locale entsprechend den Benutzereinstellungen festlegen Dies geschieht indem der Wert accept lLanguage aus dem Header des HttpRequest Objekt abgefragt wird und ein entsprechendes Java Locale Objekt erzeugt wird Das folgende Code Beispiel zeigt eine JSP Seite die die Internationalisie rung mit einem Session Bean verwendet lt body gt lt page import java util Locale gt lt hl gt Setting the Locale for a WCM bean from the HTTP header lt h1 gt lt jsp useBean id sessionBean class de gauss vip portalmanager SessionBean gt lt sessionBean init request Locale locale request getLocale sessionBean setLocale locale out println sessionBean locale sessionBean getLocale lt br gt Portal Manager API Programmierhandbuch 173 Kapitel 5 out println sessionBean getI18n getString MY_MESSAGE_KEY gt lt body gt Unterstutzung mehrerer Sprachen durch ein zentrales Template Die Struktur einer Website k nnte sich wie in folgender Abbildung darstellen Startseite de Bereich 1 m Bereich 2 m Grafiken en Bereich 1 m Bereich 2 m Grafiken Abb 42 Struktur einer Website Wenn der Benutzer auf die Startseit
71. en a Deploymentsysteme E 7 Server Agenten Parameter B Dienstprogramme Repositories Name trusted login ClickStreamRepository Wert frue DirectoryRepository groups Q InternetSite_edit en Q InternetSite_prod nternetSite_qs 7 4 A Konfiguration Abb 34 Modus Trusted Login ber den Admin Client konfigurieren Trusted Login im WCM System checkLogin request uid null im Admin Client muss in den Benutzereinstellungen die Option Vertraute Anmeldung aktiviert sein Wenn sich der Benutzer nicht am Portal Manager API anmeldet wird er als anonymer Benutzer mit minimalen Rechten behandelt Wenn der Modus Trusted Login bei der Benutzerauthentifizierung verwendet wird kann die Klasse DirectoryRepository nicht verwendet werden da dieses Repository ein Passwort verlangt das in diesem Fall nicht zur Verf gung steht 136 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Wenn auf das WCM System schreibend zugegriffen werden soll oder die angeforderten Objekte nicht fur alle Benutzer lesbar sind muss sich der Benutzer Uber das VipUserRepository anmelden Bei dieser Anmeldung wird dem Benutzer eine Context ID zugeordnet die das WCM System fur die Rechte berpr fung ben tigt Jeder schreibende Benutzer verbraucht eine CA Lizenz CA concurrent author Diese wird beim Lo
72. en m ssen unterschiedliche JSP Engines zum Ausf hren der Server verwendet werden Passen Sie in diesem Fall nach der Installa tion des WCM Systems in den Skripten zum Starten der Content Server die eingerichtete Standard URL entsprechend der Konfiguration der verwendeten JSP Engine an Zum Beenden des Content Servers verwenden Sie das mitgelieferte Skript shutdown_ Name des Content Servers bat bzw sh Alter nativ kann der Server auch ber den Admin Client heruntergefahren werden 32 Livelink WCM Server Konzepte 2 3 Programmierkonzepte Der Einsatz des Portal Manager API zur Dynamisierung und Personalisie rung von Websites setzt voraus dass die grundlegenden Programmier konzepte des Portal Manager API bekannt sind Sie werden Ihnen in diesem Abschnitt vorgestellt Mit dem Portal Manager API k nnen Sie Programme f r die JSP Engine so genannte JSP Skripte entwickeln JSP Skripte stellen den zum Benutzer gewandten Teil einer Website bzw eines Portals dar vergleichbar mit der GUI einer konventionellen Anwendung Dar ber hinaus bietet das Portal Manager API aber auch weit reichende Unterst t zung bei der Integration neuer Anwendungen F r die Erstellung von JSP Skripten wie auch f r die Erstellung von Anwendungen werden Schnittstellen in Form von fertigen Java Klassen und JavaBeans mitgeliefert Die Java Klassen und JavaBeans setzen die in diesem Kapitel vorgestellten Konzepte um Einen berblick ber die Kl
73. enen aus das aktuelle Content Objekt per Hyperlink erreichbar ist Weitere Informationen f r eine Navigation sind dort durch den Themen baum und die eventuelle Verkn pfung eines Content Objekts mit einem Vorlagenobjekt gegeben Wenn sich die zugrunde liegenden Metadaten ndern ndert sich der Inhalt automatisch ohne dass manuelle Anpassungen n tig sind L schen Kopieren Verschieben von Objekten f hrt dann nicht mehr dazu dass die Navigationselemente veralten Personalisierung Personalisierung bedeutet dass die Inhalte der Website individuell abh ngig vom aktuellen Benutzer aufbereitet und dargestellt werden Dieser benutzerspezifische Content kann aus verschiedenen Gr nden gew nscht sein M glicherweise ist es n tig bestimmten Benutzern definierte Informati onen vorzuenthalten Ein statisches System wie Livelink WCM Server kann zwar Benutzern ohne ausreichende Rechte Content vorenthalten allerdings wird dadurch nicht verhindert dass der Benutzer Kenntnis ber die Existenz bestimmter Objekte hat f r die er keine Rechte besitzt Eine andere Einsatzm glichkeit personalisierter Seiten bezieht sich auf vom Benutzer definierte individuelle Einstellungen Vorlieben etc oder seinen aktuellen Kontext Ein typisches Beispiel hierf r ist ein E Commerce Warenkorb System Hier wird dem Benutzer immer nur sein pers nlicher aktueller Warenkorb angezeigt Personalisierung und Navigation sollten immer Hand in Hand gehe
74. eploymentsystem objektabh ngige Statifizierung eingestellt ist Statifizierung von JSP Objekten Ein JSP Objekt wird objektabh ngig statifiziert wenn das Spezialattribut generate_static den Wert on oder local hat m on Dieser Wert bewirkt dass der Inhalt des Objekts in statischen Code umgewandelt wird Das gleiche gilt f r s mtliche Vorlagen die dem Objekt zugeordnet sind soweit ihr Inhalt in die vom Deploy mentsystem erzeugte Seite des Objekts eingef gt wird local Dieser Wert bewirkt hinsichtlich des Body Bereichs dass nur der Inhalt des Objekts in statischen Code umgewandelt wird Au erdem wird der Inhalt des gesamten Head Bereichs der gege benenfalls aus den Inhalten der Head Bereiche der Vorlagenkaskade zusammengesetzt ist in statischen Code umgewandelt Variablen die in einer JSP Vorlage definiert sind k nnen nur von Objekten genutzt werden die den gleichen Statifizierungsstatus wie die JSP Vorlage haben Damit das Objekt die Variable aus der JSP Vorlage nutzen kann bedeutet dies f r eine nicht vollst ndig statifizierte Vorlagen kaskade dass entweder sowohl der Code der JSP Vorlage als auch der Code des Objekts statifiziert sein muss m oder weder der Code der JSP Vorlage noch der Code des Objekts statifiziert sein darf 42 Livelink WCM Server Konzepte Statifizierung von Formularinstanzen Formularinstanzen k nnen nur objektabhangig statifiziert werden Wurde im Admin Client f r ein Dep
75. er wird durch die Klasse VipObjectHandlerBean hergestellt siehe Abschnitt Die Klasse VipObjectHandlerBean auf Seite 128 Informationen zu den Methoden der Klasse finden Sie in der Javadoc zum Portal Manager API Das VipObjectHandlerBean bildet auch die Basis f r ein formularunter st tztes Arbeiten mit den Objekten einer WCM verwalteten Website Es besteht also prinzipiell die M glichkeit eine HTML basierte Oberfl che f r Livelink WCM Server zu entwickeln Durch die Methoden des VipObjectHandlerBean k nnen ber eine solche formularbasierte Ober fl che alle Funktionen vom Anlegen eines neuen Objekts ber Vorlegen zur Qualit tssicherung bis hin zur Freigabe des Objekts abgebildet werden 38 Livelink WCM Server Konzepte Statifizierung Um den Zugriff auf dynamische Inhalte zu beschleunigen ist es unter Umstanden sinnvoll den Code der dynamischen Seite in statischen Code umzuwandeln Mit dem Begriff Statifizierung ist die Darstellung von dyna mischen Inhalten auf statischen Seiten gemeint Bei der Statifizierung wird der Code der dynamischen Seite bereits wahrend der asynchronen Generierung der Seite ausgef hrt und das Ergebnis im Allgemeinen HTML Code gespeichert Durch das Statifizieren von Seiten wird ein bestimmter Zustand einmal festgehalten und in der Produktionssicht einer Website publiziert Bei einer Seite die beispielsweise Navigationselemente enth lt wird der aktuelle Stand der Navigation zum Zeitpun
76. ers zur Verf gung gestellt Der Header der HTTP Anfrage enth lt im Feld Authorization den Benutzemamen und das Passwort die durch einen Doppelpunkt voneinander getrennt und Base 64 kodiert sind Context ID Login aus Request bzw Cookie Die Context ID wird gelesen und der Benutzer damit angemeldet Diese ID wird von Secure Access vergeben oder beim Statifizieren in den Request geschrieben Trusted Login Authentifizieren ber das Sessionattribut Damit das Portal Manager API mit anderen E Business Anwen dungen zusammenarbeiten und ein einmaliges Anmelden unterst tzen kann ist es m glich den Namen des WCM Benutzers aus einem Attribut abzufragen das mit der HTTP Session assoziiert ist Der Modus Trusted Login ist eine Funktion des Interface LoginRepository Die folgende Abbildung zeigt wie das Trusted Login ber den Admin Client konfiguriert wird Portal Manager API Programmierhandbuch 135 Kapitel 5 fed Livelink WCM Server Administration Admin Konfiguratir A loj x Programm Ansicht Extras Hilfe E A Konfiguration Keine Eintr ge vorhanden LoginRepository g Applications 4 Parameter roles amp users Sh VipDAVLockRepository VipHCLConfigRepository Q VIPHTMLClientConfig Applications Suchserver Pools ee E Wy Websites Knot
77. erungen zur Laufzeit zur Verf gung Abb 37 Klassendiagramm f r Applications Folgende Elemente sind zur Realisierung einer Application notwendig Repository Eine Implementation des Interface Repository wird als Wrapper Klasse genutzt um eine externe Datenquelle WCM f hig zu machen Eine Application kann mit 0 n Repositories verbunden werden Application Eine Implementation des Interface Application wird als Wrapper Klasse verwendet um die Logik einer Application WCM f hig zu machen Die Application verwendet die assoziierten Repositories um die Business Objekte zu erhalten und zu pflegen Portal Manager API Programmierhandbuch 161 Kapitel 5 m JavaBean Eine von der Klasse SessionApplication ableitende Klasse packt die Application in ein JavaBean das die Instanziie rung der Application im Kontext einer JSP Seite vomimmt Das Bean stellt die folgende Funktionalit t zur Verf gung m Verbinden des Bean mit einer javax servlet http HttpSession Die HTTP Session stellt eine Zustandsunterst tzung f r das zustandslose HTTP Proto koll zur Verf gung Dadurch wird es m glich einen bestimmten Benutzer mit einer HTTP Session f r die Authentifizierung zu assoziieren zur Laufzeit umschaltbare Internationalisierungsunterst tzung f r eine Application ber die Klasse Internationalization zus tzliche mit der Application in Beziehung stehende Funktionalit t Implementieren einer Application De
78. erzeugte Seite die Vorlage und den Content der View wie im JSP Modell 1 beinhaltet kann der Webdesigner den Inhalt der Vorlage nicht sehen Deshalb sollten die Vorlagen von erfahrenen Java Entwick lern geschrieben werden Portal Manager API Programmierhandbuch 167 Kapitel 5 Der Webdesigner ist fur das Schreiben der View des WCM Objekts verantwortlich Wenn er ein WCM Objekt erstellt kann er eine Vorlage ausw hlen die sich sp ter gegebenenfalls auch noch ndern l sst Der Webdesigner sollte in der JSP Seite so wenig Java wie m glich verwenden Wenn der Webdesigner den Einsatz von Java nicht vermeiden kann z B aufgrund von logischen oder arithmetischen Operationen die nicht das Design betreffen sollte er seinen Code in JavaBeans bzw Klassen auslagem 5 5 Sicherheitsaspekte Fur das Design einer Webanwendung die mit sensiblen Daten operiert ist der Sicherheitsaspekt besonders wichtig Neben Aspekten wie Authen tifizierung Verschl sselung etc die in die Anwendung implementiert werden m ssen ist es auch wichtig sich den Zugriff f r die Java Virtual Machine JVM bewusst zu machen die die serverseitige Software ausfuhrt Im Fall der Verwendung von JSP Seiten muss ein genauerer Blick auf die Sicherheitsmechanismen der JVM geworfen werden die innerhalb der JSP Engine verwendet wird JVM ohne SecurityManager Wenn im Kontext einer Anwendung kein SecurityManager explizit gesetzt ist verf gt die JVM Uber die Z
79. es Sh ClickStreamRepository amp groups Sh InternetSite_edit Sh InternetSite_prod Sh InternetSite_qs amp h roles Sh users Eh VipDAVLockRepositary Eh VipHCLConfigRepository Q VIPHTMLClientC onfig Dee ee amp amp HAE Bee ee Abb 8 bersicht ber die verf gbaren Repositories Die hier angezeigten Repositories ClickStreamRepository groups roles users VipDAVLockRepository VipHCLConfigRepository und VIPHTMLC1LientConfig werden w hrend der Installation des WCM Systems angelegt Diese Repositories geh ren zum Lieferumfang des Portal Manager API und sollten nicht gel scht werden Die Repositories InternetSite edit InternetSite_prod und InternetSite_qs wurden automatisch beim Einrichten der Website InternetSite hinzuge f gt Portal Manager API Programmierhandbuch 55 Kapitel 3 Folgende Funktionen stehen f r Repositories zur Verf gung m neues Repository einrichten siehe folgenden Abschnitt Repositories Uber Parameter konfigurieren siehe Abschnitt Para meter eines Repository festlegen auf Seite 58 Einstellungen von Repositories bearbeiten siehe Abschnitt Allge meine Einstellungen von Repositories auf Seite 65 m bersicht ber zugeordnete Applications Zuordnen neuer Applica tions und Aufheben von Zuordnungen siehe Abschnitt Application zu einem Repository zuordnen auf Seite 65 m Repository entfernen s
80. essourcen bereits beim Anlegen der Application einstellen neue Application i x Ressourcen Hier k nnen Sie einstellen welche Ressourcen der Application lt zugeordnet werden sollen Sobald Sie die Application angelegt haben IS k nnen Sie zus tzliche Parameter festlegen j Hinzuf gen Bearbeiten Entfernen Hilfe Abbrecnen zur ck Abb 17 Ressourcen beim Anlegen einer Application zuordnen Gehen Sie dazu folgenderma en vor 1 Klicken Sie auf die Schaltfl che Hinzuf gen 2 Geben Sie in dem eingeblendeten Dialog den Ressourcen Namen ein Die hier angegebenen Ressourcen werden ber den Klassenpfad geladen und m ssen den Java Ressourcen entsprechen weitere Informationen finden Sie in der Java SDK API Dokumentation der Klasse java util ResourceBundle 3 Best tigen Sie die Angaben durch Klicken auf die Schaltfl che OK Die Ressource wird in den Assistenten bernommen 74 Livelink WCM Server Portal Manager API verwalten 4 Klicken Sie auf die Schaltflache Fertig Parameter einer Application festlegen Die Konfiguration von Applications erfolgt Uber Parameter Art und Anzahl der Parameter hangen von den Funktionen der Application ab Parameter k nnen als Knoten oder einzelne Parameter definiert werden In Knoten werden Parameter desselben Typs zusammengefasst Knoten k nnen wiederum weitere Knoten enthalten Im Unterschied zu Parame tern haben sie keine
81. etValue url gt gt lt e getValue title gt lt a gt lt td gt lt tr gt lt gt lt table gt lt gt lt body gt lt html gt Mehrere Content Objekte auf einer Seite Multicontent Seite platzieren Mithilfe des Portal Manager API k nnen beliebig viele Content Objekte Texte Tabellen Grafiken usw auf einer Seite pr sentiert werden Dabei m ssen einschr nkende Aspekte wie z B Zugriffsrechte nat rlich ber ck sichtigt werden Als Content k nnen Objekte aus der WCM verwalteten Website ebenso benutzt werden wie Daten aus externen Anwendungen Sogar website und anwendungs bergreifende Content Verkn pfungen sind v llig unproblematisch Der Ansatz der Multicontent Seite ist besonders geeignet f r anspruchs volle Websites bei denen in der Regel unterschiedliche Mitarbeiter f r das Erstellen bzw die Bereitstellung des Content zust ndig sind So werden z B Artikelbeschreibungen von Werbetextern erstellt die Abbildungen liefert eine Bildagentur und Artikelstammdaten wie Name Artikelnummer Preis und Lieferfrist werden von Mitarbeitern aus dem Einkauf in einer Datenbank abgelegt 154 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Konzeption Eine Multicontent Seite wird als JSP Seite mit den Methoden des Portal Manager API erstellt Dies erfordert bereits an dieser Stelle eine Arbeitsteilung zwischen Webdesigner und Programmierer Skizzieren Si
82. eutig sein und mit einem Buchstaben beginnen Der Name der Application kann nachtr glich nicht ge ndert werden m Klassenname Name der Java Klasse der Application Die Klasse wird vom Class Loader ber diesen Namen geladen Es wird erwartet dass sie das Interface Application implementiert und einen ffentlichen leeren Konstruktor hat m Logischer Name Der logische Name der Application ist der Name unter dem die Application vom Portal Manager API angesprochen wird Sollen z B zwei Content Server unterschiedlich konfigurierte VipUserApplications besitzen so k nnen zwei VipUserApplications mit unterschiedlichen Namen erzeugt Portal Manager API Programmierhandbuch 71 Kapitel 3 werden die beide den logischen Namen VipUserApplication haben m Sprache Standardsprache der Application Die Sprache wird u a dazu verwendet die Ressourcen lokalisiert auszulesen Es wird eine Angabe vom Typ Sprachcode L ndercode z B en_US erwartet Weitere Informationen hierzu finden Sie in der Java SDK API Dokumentation der Klasse java util Locale Best tigen Sie die Angaben durch Klicken auf die Schaltfl che Weiter Assistent beenden neue Application xj Assistent beenden Die bisherigen Angaben gen gen um die Application anzulegen Sie LLA k nnen den Assistenten jetzt beenden oder erweiterte Einstellungen K IS vornehmen gt Assistent beenden und Application anlegen Assistent mit erweiterten Einstell
83. faces Portal Manager API Programmierhandbuch 103 Kapitel 4 Herauszustellen ist eine besondere Implementation des Interface Value die Klasse TupelMap Eine TupelMap speichert Paare von Key und Value da sie selbst vom Typ Value ist kann sie wiederum als Wert in einer anderen Tupe1Map auftreten So entstehen mehrstufige rekursive Struk turen Die folgende Abbildung veranschaulicht diese Konstruktion Key Value key value1 key2 value2 value3 Key Value key1 value1 key2 value2 key3 key3 value3 key4 value4 keyn valuen key4 value4 keyn valuen Abb 24 Mehrstufige Schl ssel Wert Listen in der TupelMap Es ist nat rlich auch m glich dass eine TupelMap sich selbst enth lt auch wenn das eine nicht unbedingt sinnvolle und gewollte Konstellation ist Einige Algorithmen in den Klassen des Portal Manager API die auf TupelMap operieren w rden in diesem Fall in den Zustand einer Endlos rekursion gelangen 104 Livelink WCM Server Klassen und Interfaces des Portal Manager API Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm interface interface interface class Serializable Clonable Comparable HashMap interface Value interface Key Abb 25 Die grundlegenden Klassen im Gesamtklassendiagramm Filterung und Sortierung Das Filtern und Sortieren von Daten sind grund
84. g 39 Sprache Application 72 Staging 46 Starten Content Server in Application Server 31 Statifizierung 39 absolute_urls Spezialattribut 41 generate_static Spezialattribut 40 timeout Spezialattribut 40 von Formularinstanzen 43 von JSP Objekten 42 von XML Objekten 45 Systemarchitektur Master Administrationsserver 26 Portal Manager API Programmierhandbuch 199 Index Master Content Server 26 Minimalsystem 28 Proxy Server 27 separate Datenhaltung 29 T timeout Spezialattribut 40 trace properties 94 V Value Interface 103 Verwalten Applications 69 Repositories 55 VipDAVApplication Parameter 77 VipHCLApplication Parameter 78 VipHTMLClientApplication Parameter 80 VipObjectApplication Parameter 84 VipObjectBean Klasse 126 VipObjectFilterBean Klasse 130 VipObjectHandlerBean Klasse 46 128 VipProfile Interface 123 VipUserApplication Parameter 84 VipUserBean Klasse 126 VipWhatsNewBean Klasse 130 Ww WCM Objekt Lebenszyklus 46 WebServiceApplication Parameter 84 200 Livelink WCM Server
85. gen eines neuen Benutzerkontos In diesem JSP Beispiel werden die Eingaben aus einem HTML Formular dazu benutzt ein neues Benutzerkonto anzulegen lt html gt lt head gt lt head gt lt body gt lt page import java util de gauss lang de gauss vip util de gauss vip repository gt lt jsp useBean id vub class de gauss vip portalmanager VipUserBean scope session gt lt read the parameters from the request Portal Manager API Programmierhandbuch 147 Kapitel 5 gt String name request getParameter name if name null name String uid request getParameter uid if uid null uid String mail request getParameter mail if mail null mail String pwd request getParameter pwd if pwd null pwd lt p gt lt form action VIPURL gt lt table gt lt tr gt lt td gt Name lt td gt lt td gt lt input name name value lt name gt gt lt td gt lt tr gt lt tr gt lt td gt User Id lt td gt lt td gt lt input name uid value lt uid gt gt lt td gt lt tr gt lt tr gt lt td gt E Mail lt td gt lt td gt lt input name mail value lt mail gt gt lt td gt lt tr gt lt tr gt lt td gt Password lt td gt lt td gt lt input name pwd type password value lt pwd gt gt lt td gt lt tr gt lt tr gt lt td gt amp nbsp lt td gt lt td gt lt input type submit value create user gt
86. geordnet haben erscheinen diese Eintr ge unterhalb des jeweiligen Knotens in der folgenden Abbildung wurde der Application VipHCLApplication ein Parameter zugeordnet Portal Manager API Programmierhandbuch 87 Kapitel 3 Konfiguration Pools ze Eigene Verbindungstypen G Server y Websites amp Deploymentsysteme E Server Agenten B Dienstprogramme Repositories Applications E ClickStreamApplication VipDAVApplication E VipHCLApplication Repositories t Parameter hel servlet url VIPHTMLClientApplication E VipObjectApplication VipUserApplication a WebServiceApplication OF FAA HH Hye IE f u HA Abb 20 Struktur unterhalb des Elements Applications Application loschen So l schen Sie eine Application 1 2 88 Wahlen Sie Konfiguration Applications Markieren Sie die gew nschte Application im linken Baum W hlen Sie Application l schen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol x Symbol zum L schen einer Application Best tigen Sie die Sicherheitsabfrage mit Ja Die Konfiguration der Application wird aus dem WCM System entfernt die dazugeh rige Java Klasse wird jedoch nicht gel scht Livelink WCM Server Portal Manager API verwalten Application zu einem Content Server zuordnen Ein Content Server der im Kontext einer JSP Engine bzw als Weban wendung in einem Application Server l uft k
87. gleichen Namens angelegt dieser Name kann aber auch so gew hlt werden dass sich der Name des Repository und der des Deploymentsystems unter scheiden Ein Deploymentsystem ist zust ndig f r jeweils genau eine Website und eine Datenhaltungssicht Edit QS Produk tion Mit der Wahl eines VipObjectRepository wird also gleichzeitig immer eine bestimmte Website und eine bestimmte Sicht spezifiziert Der logische Name der zugrunde liegenden Application ist VipObjectApplication m durch Angabe des Website Namens und der Datenhaltungssicht auf die Website Edit QS Produktion Auf diese Weise kann auf die Objekte einer Website zugegriffen werden ohne Deploymentsysteme einzurichten Repositories die so konfiguriert sind k nnen keine Deployment spezifischen Objektdaten z B URL Pfad zur ckliefern Hinweis Weitere Informationen zur Konfiguration eines VipObjectRepository finden Sie in Tabelle 3 Repositories und ihre Parameter auf Seite 60 Einzelne WCM Objekte sind Eintr ge in diesen Repositories S mt liche Metadaten der WCM Objekte stellen Schl ssel dieser Eintr ge dar Die Bezeichner dieser Metadaten sowie die Werte einiger Meta daten sind im WCM Java API Programmierhandbuch bzw in der Javadoc zum Portal Manager API beschrieben Portal Manager API Programmierhandbuch 127 Kapitel 4 Die Klasse VipObjectHandlerBean 128 Vollst ndiger Name de gauss vip portalmanager VipObjectHandlerBean
88. gout bzw beim Timeout der genutzten Context ID zur ckgegeben Hinweis Die verbrauchte Lizenz wird fr hestens nach einer Minute frei gegeben auch wenn sich der Benutzer vor Ablauf der Minute abmeldet Nach Ablauf der Minute wird die Lizenz gleichzeitig mit der Abmeldung des Benutzers freigegeben Session Management Im folgenden Klassendiagramm wird das HTTP Session Management im Zusammenhang mit der Authentifizierung dargestellt Portal Manager API Programmierhandbuch 137 Kapitel 5 Interface HttpSession BindingListener from http abstract class Base from core interface Session from core interface lt lt sessionld gt gt HttpSession from http interface LoginRepository from repository interface nn VipProfile n from portalmanager Abb 35 Authentifizierung und Session Management F r das Session Management und die Authentifizierung werden die folgenden wesentlichen Komponenten verwendet 138 HttpSession damit kann eine eindeutige Session ID f r eine HTTP Anfrage ermittelt werden HttpSessionBindingListener damit wird der Klasse SessionBase angezeigt dass eine HTTP Session beendet bzw gestartet ist LoginRepository beinhaltet die Benutzerinformation zur berpr fung der Anmeldungsanfrage SessionBean enth lt alle Session Informationen im Portal Manager API Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API V
89. gt lt jsp useBean id sessionBean class de gauss vip portalmanager SessionBean scope session gt lt jsp useBean id objBean class de gauss vip portalmanager VipObjectBean scope session gt lt objBean setRepositoryName VIPDEPLOYMENT_NAME A user has to be logged in otherwise the operations are executed in the content of Anonymous if sessionBean isLoggedIn request The request contains the necessary attributes for the login sessionBean checkLogin request gt lt This should be part of the Template End gt lt In this example is no check if the retrieved entries are null in my website is object 215 a jsp object RepositoryEntry jsp objBean getEntry 215 ContentHandler chJsp objBean getContent jsp in my website is object 255 a picture object RepositoryEntry pic objBean getEntry 255 ContentHandler chPic objBean getContent pic gt lt table gt lt tr gt lt td gt lt Gets the whole content i e content plus template gt lt chJsp getString gt lt td gt 156 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API lt td gt lt Returns the content in this case the lt img gt tag gt lt chPic getString new HTMLContentConverter gt lt td gt lt tr gt lt tr gt lt td gt lt This is faster because it is not necessary to load the content gt lt img src lt
90. hrt Benutzer werden durch die Klasse SessionBean nicht auto matisch angemeldet Es ist m glich einen Benutzer explizit abzumelden Das Interface VipProfile Vollst ndiger Name de gauss vip portalmanager VipProfile Mithilfe des Interface VipProfile lassen sich zus tzliche Daten zu einem Benutzer verwalten und speichern Der Content Client verwendet VipProfile zum permanenten Speichern der Konfigurati onsdaten eines Benutzers Au erdem k nnen WCM unabh ngige Daten wie z B die Adresse des Benutzers ber VipProfile verwaltet und gespeichert werden Das VipProfilezu einem Benutzer kann durch das SessionBean ber den Aufruf der Methode SessionBean getCurrentUserProfile String ermittelt werden dabei ist die Benutzerkennung zu bergeben Die Daten werden innerhalb von VipProfile als Schl ssel Wert Paare verwaltet und gegebenenfalls gespeichert d h es kann unter einem bestimmten Schl ssel ein Wert als Value abgelegt werden Die ber VipProfile zugreifbaren Daten sind in drei Abschnitte unterteilt Portal Manager API Programmierhandbuch 123 Kapitel 4 124 transiente Profildaten VipProfile TRANSIENT Dieser Abschnitt dient zur Speicherung von Profildaten die w hrend der Session eines Benutzers verf gbar sein m ssen aber nicht persistent abgelegt werden sollen Die transienten Profildaten aus VipProfile k nnen gelesen und manipuliert werden ohne dass der jeweilige Benutzer im WCM System angemeldet sein
91. ication und Repository Klassen sind von der Basisklasse Base abgeleitet Diese Klasse implementiert mehrere Interfaces und erweitert selbst eine externe Klasse CoreObject Die Klasse Base Vollst ndiger Name de gauss vip portalmanager core Base Base ist eine abstrakte Basisklasse aller Applications und Reposito ries Au erdem sind in der Klasse Base die Methoden zum Laden von Properties und Multiproperties Dateien enthalten Base enth lt zus tzlich die statische Methode startPMServer mit der Sie Content Server die im Kontext einer JSP Engine bzw als Weban wendung in einem Application Server laufen starten k nnen Wenn diese Content Server bereits gestartet wurden bleibt ein Aufrufen der Methode ohne Auswirkung Die folgenden Parameter m ssen als System Properties gesetzt sein Tabelle 5 Startparameter f r Content Server die im Kontext einer JSP Engine laufen Parameter Bedeutung vip server name Der Name des Content Servers der im Kontext einer JSP Engine bzw als Weban wendung in einem Application Server l uft vip admin host Der Name des Rechners auf dem der Master Admin Server l uft vip admin socket Der Socketport des Master Admin Servers vip admin http Der HTTP Port des Master Admin Servers Portal Manager API Programmierhandbuch 115 Kapitel 4 Parameter Bedeutung vip admin secure Gibt an ob die Kommunikation mit dem Master Admin Server verschl sselt erfolgen soll
92. ich Die im Portal Manager API enthaltenen Beans sind jeweils an eine JSP Session gekn pft Sie werden daher auch Session Beans genannt Sessions sind Einheiten die von der JSP Engine verwaltet werden Der Sinn einer Session besteht darin Aktionen eines Webclients zusammen fassen zu k nnen Dieses ist mit HTTP als Protokoll zwischen Webclient HTML Browser und Webserver zun chst einmal unm glich da es sich um ein zustandsloses Protokoll handelt Eine Session existiert dagegen auch HTTP Anfragen bergreifend Ein JSP Skript kann die aktuelle Session referenzieren So l sst sich ein Zustand f r jeden Benutzer ber mehrere Anfragen hinweg verwalten Durch Session Beans wird die Ressourcenverwaltung erheblich erleichtert Der Beginn einer Session ist durch den ersten Kontakt eines Webclients festgelegt das Ende durch den letzten Kontakt Technisch ist die JSP Engine f r die Verwaltung der Sessions verantwortlich Sie speichert dazu im Allgemeinen einen Session Schl ssel im jeweiligen Browser Dies ist auch der Grund daf r dass im Browser nicht persistente Cookies zuge lassen sein m ssen Jede JSP Engine hat eigene Strategien um zu bestimmen wie und wann Session Schl ssel ung ltig werden wann also der letzte Kontakt eines Browsers stattfand Im Normalfall wird dies empi risch ber ein Zeitverhalten bestimmt Verschiedene Instanzen von Brow sern auf demselben Client Computer sind normalerweise mit verschiedenen Session Sch
93. ie bereits erw hnt fungiert das Interface Repository als Wrapper Klasse um Datenquellen so aufzubereiten dass das Portal Manager API auf sie zugreifen kann Die abstrakte Basisklasse RepositoryImpl stellt Standardimplementati onen f r Methoden zur Verf gung die mit dem Portal Manager API in Bezug stehen Es m ssen deshalb nur die Methoden die f r die Daten quellen relevant sind in den abgeleiteten Repository Klassen implemen tiert werden Ein Repository im Kontext des Portal Manager API basiert auf den Datenstrukturen die innerhalb des WCM Systems verwendet werden siehe Abschnitt RepositoryMap und zugeh rige Klassen auf Seite 107 Portal Manager API Programmierhandbuch 163 Kapitel 5 In der folgenden Abbildung werden alle auf Datenquellen bezogenen Methoden dargestellt die von der Klasse RepositoryImpl zur Verf gung gestellt werden Dargestellt werden alle inhaltsbezogenen Repository Methoden Gem der Implementationsstrategie handelt es sich dabei um m gliche Methoden die in einer abgeleiteten Repository Klasse implementiert werden Abb 39 Die Klasse RepositoryImpl mit allen f r Datenquellen relevanten Methoden Die von der Klasse RepositoryImpl abgeleitete Klasse hat einen eigenen Persistenz Mechanismus Sie leitet die Persistenz Aufgabe z B an ein LDAP oder DBMS System etwa ber eine JDBC Verbindung auf ein RDBMS F r eine Repository Impl f hige Implementation m ssen alle s
94. iehe Abschnitt Repository l schen auf Seite 68 Repository anlegen So legen Sie ein Repository an 1 W hlen Sie Konfiguration Repositories 2 W hlen Sie Neues Repository aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol E Symbol zum Anlegen eines Repository Der Dialog zum Anlegen eines Repository wird ge ffnet 56 Livelink WCM Server Portal Manager API verwalten neues Repository x Name und Java Klasse Geben Sie dem neuen Repository einen lt eindeutigen Namen und ordnen Sie ihm eine Java By Klasse zu Sobald das Repository angelegt ist gt k nnen Sie beliebige Parameter daf r festlegen Name Klassenname Hilfe Abbrechen Abb 9 Repository anlegen 3 Geben Sie im Feld Name einen Namen f r das neue Repository an Dieser Name ist frei w hlbar muss jedoch innerhalb des WCM Systems eindeutig sein F r Repositories vom Typ VipObjectRepository und VipObjectHandlerRepository kann dies der Name des Deploy mentsystems sein Der Name des Repository kann nachtr glich nicht ge ndert werden 4 Geben Sie im Feld Klassenname den Namen der Java Klasse des Repository an Die Klasse wird vom Class Loader ber diesen Namen geladen Es wird erwartet dass sie das Interface Repository implementiert und einen ffentlichen leeren Konstruktor hat 5 Klicken Sie auf die Schaltfl che Fertig Portal Manager API Programmierh
95. iehe folgende Abbildung Portal Manager API Programmierhandbuch 19 Kapitel 2 JSP Skript a lt i oO D z E Commerce s Anwendung T 5 RDBMS gt Server LDAP Server Content Manager Abb 1 Das Schichtenmodell des Portal Manager API JSP Skripte JSP Skripte sind in HTML Seiten eingebetteter Java Code Durch Anfragen von Clients HTML Browsern an den Webserver wird der Java Code in solchen HTML Seiten durch die JSP Engine ausgef hrt Das Ergebnis wird als Content an den Client zur ckgegeben Der Java Code wird also serverseitig ausgef hrt Dabei wird der Java Code mittels einer JSP Engine einmalig in Servlets umgewandelt bevor er das erste Mal ausgef hrt wird Der Client bemerkt diesen Vorgang nicht da ihm nach wie vor HTML Seiten geliefert werden Java Code der in JSP Seiten verwendet wird muss in Tags einge schlossen werden die der JSP Syntax entsprechen Andernfalls kann der Code nicht von der JSP Engine verarbeitet werden 20 Livelink WCM Server Konzepte Session Beans Beans sind die Klassen deren Instanzen in JSP Skripten benutzt werden k nnen Sie bilden den Einstiegspunkt in das Portal Manager API Ein Bean st tzt sich auf eine Application abh ngig davon welche Aufgaben mit dem Portal Manager API gel st werden sollen Wie auch bei Applica tions wird der Anschluss externer Anwendungen erst durch die Entwick lung individueller Bean Klassen m gl
96. ieht beispielsweise ein anonymer Benutzer andere Elemente als ein autorisierter Benutzer Weitergehende Konzepte der Personalisierung w rden Objektinformationen auf Basis von Merk malen des Benutzerprofils filtern Konzeption In diesem Abschnitt wird skizziert wie Sie dynamische Navigationsele mente konzipieren Gehen Sie dazu folgenderma en vor 1 Skizzieren Sie das Layout der Seite und berlegen Sie sich mit welchen HTML Elementen sich Ihr Layout umsetzen l sst 2 Schreiben Sie auf Basis dieses Konzepts den JSP Code berlegen Sie sich hierbei welche Teile des HTML Codes dynamisch erzeugt werden m ssen und welche Beans die passenden Methoden bereit stellen um an diese Informationen zu gelangen Normalerweise werden Hyperlinks auf WCM Objekte unterhalb eines bestimmten Themas als Tabelle oder Liste angeboten Anzahl und Namen der Objekte sind unbekannt d h es werden die Namen bzw die ber schriften sowie die URLs aller WCM Objekte unterhalb des gew hlten Themas ben tigt Mithilfe der Klasse VipObjectBean kann ein RepositoryIterator auf alle Objekte unterhalb des Themas geliefert werden Dabei ist es auch m glich nur Objekte eines bestimmten Typs zu ber cksichtigen ber den RepositoryIterator wird die Liste von Objekten durchlaufen Jeder Eintrag ist ein RepositoryEntry der Metadaten Name ber schrift usw enth lt die ausgelesen und in HTML ausgegeben werden k nnen Portal Manager API Programmie
97. ies Klassendiagramm f r Applications Allgemeine Hierarchie zum Entwickeln von Applications Die Klasse RepositoryImpl mit allen f r Datenquellen relevanten Methoden JSP Modell 2 Architektur Architektur des Portal Manager API mit Aspekten der Internationalisierung Struktur einer Website Portal Manager API Programmierhandbuch 107 107 108 110 114 117 121 125 136 138 139 161 163 164 166 171 174 Tabellenverzeichnis Tabelle 1 Verf gbare Funktionalit t in den APIs von Livelink WCM Server 14 Tabelle 2 Funktionen f r die Konfiguration von Repositories und Applications 54 Tabelle 3 Repositories und ihre Parameter 60 Tabelle 4 WCM Applications und ihre Parameter 77 Tabelle 5 Startparameter f r Content Server die im Kontext einer JSP Engine laufen 115 Tabelle6 Beispielkonfiguration eines DirectoryRepository 142 8 Livelink WCM Server Portal Manager API Programmierhandbuch 10 Livelink WCM Server KAPITEL 1 Einleitung Das Portal Manager API ist Teil von Livelink Web Content Management Server kurz Livelink WCM Server Mit dem Kauf von Livelink WCM Server haben Sie ein leistungsfahiges Content Manage ment System erworben mit dem Sie komplexe und verteilte Websites aufbauen pflegen und verwalten k nnen Mit dem Portal Manager API k nnen Sie dynamische Inhalte f r Ihre Website erstellen und verwalten und so Unternehmensportale entwickeln Dar ber hinaus
98. igkeit von den Anfrageparametern an welche JSP Seite die Anfrage weitergeleitet wird Die View JSP Seite hat keine Verarbeitungslogik Sie verwendet die Beans zum Aufbau des dynami schen Contents Application Server Controller Servlet Enterprise Server Datenquellen instanziiert BROWSER Abb 40 JSP Modell 2 Architektur 166 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Tipps zum Entwickeln von JSP Seiten mit dem Portal Manager API Livelink WCM Server bietet zwei M glichkeiten um den Controller der JSP Modell 2 Architektur zu implementieren Zun chst einmal k nnen Sie die JSP Seite oder das Servlet als Controller verwenden Da es mit Livelink WCM Server einfacher ist JSP Seiten als Servlets zu hand haben wird der Einsatz von JSP Seiten empfohlen Dar ber hinaus k nnen Sie auch mit WCM Vorlagen arbeiten die folgende Funktionalit t beinhalten k nnen Anmeldungs berpr fung ob der Benutzer der Session sich bereits am Portal Manager API angemeldet hat Erstellen und Initialisieren der Beans des Portal Manager API die in der Ansicht ben tigt werden Weiterleiten der Anfrage an eine JSP Seite je nach Anfrageparameter m Fehlerbehandlung mithilfe eines Try Catch Blocks lt try gt VIPCONTENT lt catch Exception ex Fehlerbehandlung gt Fehler lt ex getMessage gt lt gt Obwohl die
99. ions Diese Klassen werden im Text nicht erl utert Sie sind in das Diagramm aufgenommen um kontextuelle Bez ge herzustellen m Hellere K sten symbolisieren Interfaces Der Name des Interface ist immer kursiv geschrieben m Dunklere K sten stehen f r Klassen Nur die Namen abstrakter Klassen sind kursiv geschrieben Die Beziehungen zwischen den Klassen und Interfaces wird durch Pfeile dargestellt Ein gef llter Pfeil steht f r die Vererbung einer Klasse Schl s selwort extends ein hohler Pfeil f r die Implementation eines Interfaces Schl sselwort implements Gestrichelte Pfeile stellen Assoziationsbe ziehungen zwischen Klassen dar In diesem Fall wird die Beziehung explizit benannt Die folgende Abbildung verdeutlicht die verschiedenen Darstellungs formen 100 Livelink WCM Server Klassen und Interfaces des Portal Manager API class interface External External Class Interface interface Interface1 abstract class AbstractClass1 interface Interface2 class Class2 class Class1 uses Abb 23 Darstellungsschema f r die Klassendiagramme Klassenbeschreibung Mit der Installation des WCM Systems wird die komplette Dokumentation der Klassen des Portal Manager API als Javadoc Seiten installiert Sie finden die Javadoc Dokumentation im Verzeichnis WCM Installationsverzeichnis documentation javadoc Die Klassen beschreibungen in diesem Handbuch untersch
100. ipProfile enthalt alle Informationen bez glich des WCM Benut zers der mit einer HTTP Session assoziiert ist Login Repositories In der folgenden Abbildung sind die Repositories dargestellt die fur eine Anmeldung benutzt werden k nnen interface LoginRepository from repository Abb 36 Login Repositories Manchmal ist es notwendig eigene Login Repositories zu schreiben Wenn Sie z B eine Datenbank mit allen Benutzerinformationen haben und die Datenquelle benutzen wollen um die Authentifizierung durchzu f hren m ssen Sie ein Login Repository entwickeln das auf die Daten bank zugreift Diese Klasse muss das Interface LoginRepository implementieren und von der abstrakten Basisklasse RepositoryImpl oder einer ihrer Unterklassen abgeleitet werden Weitere Informationen hierzu finden Sie im Abschnitt Ableiten von der Klasse RepositoryImp1 auf Seite 163 Das Standard Login Repository ist das Repository users Portal Manager API Programmierhandbuch 139 Kapitel 5 5 2 Anwendungsbeispiele fur das Portal Manager API In diesem Abschnitt finden Sie zu folgenden Themen Anwendungsbei spiele fur die Programmierung mit dem Portal Manager API m Anlegen von Benutzern ber ein Portal siehe folgenden Abschnitt Erstellen dynamischer Navigationselemente siehe Abschnitt Dyna mische Navigationselemente erzeugen auf Seite 150 Multicontent Seiten siehe Abschnitt Mehrere Content Objekte auf einer
101. ird w hrend dieses Zeitraums nicht auf die Objekte im Cache zugegriffen werden Objekte aus dem Cache entfernt bis wieder die minimale Gr e erreicht ist Wenn auf ein Objekt zugegriffen wird wird zuerst im Cache nach dem Objekt gesucht Ist es dort nicht vorhanden wird es aus der Datenbank geladen Anschlie end wird das Objekt im Cache abgelegt Hierbei werden drei F lle unterschieden Die minimale Gr e wurde noch nicht erreicht Das neu geladene Objekt wird an einer freien Position im Cache abgelegt Der Cache vergr ert sich Die minimale Gr e wurde erreicht die maximale Gr e noch nicht Das neu geladene WCM Objekt wird im Cache abgelegt Es ist m glich dass dabei ein Objekt aus dem Cache entfernt wird sodass sich die Gr e des Caches nicht unbedingt erh ht 188 Livelink WCM Server Caching Die maximale Gr e wurde erreicht Das neu geladene WCM Objekt wird im Cache abgelegt Der Cache ermittelt auf Basis eines bestimmten Algorithmus H ufigkeit der Zugriffe Verweildauer im Cache welches Objekt aus dem Cache entfernt wird Ist bei Erreichen der eingestellten Cache Reduzierzeit der Cache gr er als im Parameter f r die minimale Gr e angegeben entfemt der Cache selbstst ndig so viele Objekte bis wieder die minimale Gr e erreicht ist Dieser Vorgang wird im eingestellten Zeitabstand wiederholt Wenn Sie sicherstellen m chten dass viele Objekte im Cache gehalten werden setzen Si
102. ist deshalb wichtig die entwickelte Software erfolgreich hinsichtlich Korrektheit Stabilit t Robustheit und Performance zu testen bevor sie in den produktiven Betrieb bernommen wird F r das korrekte Funktionieren der entwickelten Software kann keinerlei Garantie durch die Gauss Interprise AG bernommen werden Gern unterst tzen wir Sie beratend und entwickelnd durch den Bereich Gauss Professional Services um so Probleme bereits in einer fr hen Phase der Entwicklung zu verhindern 1 1 Hinweise zu diesem Handbuch Das Portal Manager API und damit auch dieses Dokument richten sich an Personen die ber fundiertes technisches Know how verf gen Die folgenden Voraussetzungen sollten erf llt sein Kenntnis des Produkts Livelink WCM Server m glichst nicht nur als Anwender sondern als Administrator Technisches Verst ndnis f r die Abl ufe bei der Benutzung von JSP Seiten und Servlets Allgemeine Programmiererfahrung Erfahrung in der Programmie rung mit Java und Kenntnisse ber HTML 12 Livelink WCM Server Einleitung Der Inhalt dieses Handbuchs ist folgenderma en gegliedert Kapitel 2 Konzepte erl utert die grundlegenden Konzepte des Portal Manager API und die Integration des Portal Manager API in die Systemarchitektur eines WCM Systems Kapitel 3 Portal Manager API verwalten beschreibt wie Sie das Portal Manager API mithilfe von Applications und Repositories konfi gurieren AuRerdem enth
103. itel 3 Application Parameter Name eines InSite Editing Deploymentsystems Beschreibung Konfiguriert fur das entsprechende InSite Editing Deploymentsystem das Fenster mit den Objektinformationen Folgende Parameter k nnen unterhalb dieses Parameterknotens angelegt werden keys Durch Leerzeichen getrennte Liste von Attributen die f r jedes Objekt angezeigt werden Standard m ig werden oid title type state und version angezeigt width Breite des Fensters in Pixeln height H he des Fensters in Pixeln DEFAULT_VALUE_FOR_APPLET WORK_DIRECTORY VIPHTMLClientApplication Gibt das lokale Arbeitsverzeichnis fur das Download Applet des Content Clients Classic an Der Wert darf nicht leer sein und muss ein g ltiges Verzeichnis sein Standardwert c temp DEFAULT_VALUE_FOR_AUTO REFRESH_TIME Gibt die Zeitspanne in Sekunden an nach der die Aktionsliste des Content Clients Classic automatisch aktuali siert wird Der Wert muss eine ganze positive Zahl oder 0 sein Standardwert 0 80 Livelink WCM Server Portal Manager API verwalten Application Parameter DEFAULT_VALUE_FOR_NAVIGATION_ APPLET_OBJECTLIST_ POS DEFAULT_VALUE_FOR_NO_AUTO TASKMANAGER_WINDOW Beschreibung Gibt an wo im Content Client Classic bei Verwendung des Navigations Applets die Objektliste angezeigt wird M gliche Werte sind 0 unterhalb der Themenstruktur 1
104. jektversionen angezeigt Standardwert 300 Portal Manager API Programmierhandbuch 83 Kapitel 3 Application Parameter Beschreibung OPTION _SHOW_DEBUG_INFO Wenn der Wert dieses Parameters true ist werden in einigen Dialogen des Content Clients Classic zusatz liche Informationen angezeigt Diese Informationen k nnen zur Fehlersuche benutzt werden Standardwert false VipObjectApplication keine keine VipUserApplication extend profile Eine durch Leerzeichen separierte Liste von Repositories Diese Reposito ries werden f r die Erweiterung des Profils verwendet WebServiceApplication allowedWebsites Eine durch Kommas separierte Liste von Website Namen Auf die angege benen Websites kann Uber WCM WebServices zugegriffen werden Durch Eingabe eines Stern chens wird der Zugriff auf alle WCM verwalteten Websites erlaubt Standardwert leer kein Zugriff Uber WCM WebServices m glich 84 Livelink WCM Server Portal Manager API verwalten Application Parameter deniedWebsites Beschreibung Eine durch Kommas separierte Liste von Website Namen Auf die angege benen Websites kann Uber WCM WebServices nicht zugegriffen werden Durch Eingabe eines Stern chens wird der Zugriff auf alle WCM verwalteten Websites verboten Ein Verbot hat Vorrang vor einer Erlaubnis Standardwert leer Parameter einer Application l schen Um
105. k WCM Server ist ein relationales Datenbank Managementsystem erforderlich In der Datenbank werden u a die Meta daten der WCM Objekte gespeichert Dieser Anhang beschreibt das Caching Verhalten des Portal Manager API in Bezug auf Metadaten B 1 Zugriff auf WCM Objekte Beim ersten Zugriff auf ein Objekt werden die gespeicherten Metadaten aus der Datenbank geladen Das Objekt wird aus den Metadaten erstellt und anschlie end im serverseitigen Cache zwischengespeichert Wenn ein bereits geladenes Objekt erneut angefordert wird wird das im Cache enthaltene Objekt zur ckgeliefert Sobald sich ein Objekt durch eine Staging Aktion ndert wird es aus dem Cache entfernt Dadurch m ssen beim n chsten Zugriff auf das Objekt die aktualisierten Metadaten aus der Datenbank neu geladen werden Da ein Objekt in jeder Sicht Edit QS und Produktion unterschiedliche Meta daten enthalten kann wird f r jede Sicht ein eigenes Objekt in der Daten bank und im Cache gehalten Portal Manager API Programmierhandbuch 185 Anhang B Die Erstellung einiger Metadaten ist sehr zeitaufwendig Da der Content Client in der Regel nicht alle Metadaten ben tigt werden beim Laden eines Objekts nur Basisdaten aus der Datenbank gelesen Dadurch wird im Server weniger Speicher verbraucht und insgesamt der Ladevorgang beschleunigt Die nicht geladenen Metadaten die so genannten verz gert zu ladenden Daten werden bei Bedarf aus der Datenbank gelesen S
106. keinen schreibenden sondern nur lesenden Zugriff auf die WCM Objekte bzw die Konfiguration Die nderung von WCM Objekten erfolgt ausschlie lich ber den Master Content Server nderungen an der Konfiguration des WCM Systems sind nur ber den Master Administrationsserver m glich Siehe auch Serverkategorie Repository Repository ist eine Abstraktion die einen einheitlichen Zugriff auf Datenbest nde erlaubt Serverkategorie In einem WCM System wird zwischen Master und Proxy Servern unterschieden Master Server haben schreibenden Zugriff auf die Daten des WCM Systems Proxy Server dagegen nur lesenden Der Master Content Server verwaltet die Website Daten der Master Administrationsserver die Konfigurations und Systemdaten Dar ber hinaus k nnen beliebig viele Proxy Server eingesetzt werden 194 Livelink WCM Server Glossar Servertyp Entsprechend den Aufgaben der Server gibt es zwei Servertypen Content Server zur Verwaltung von Website Daten und Administrationsserver zur Verwaltung der Benutzer Konfigurations und Systemdaten des WCM Systems Jeder Content Server ist grundsatzlich dazu in der Lage alle Sichten auf die Daten der verwalteten Website s zur Verf gung zu stellen Edit QS und Produktion Die verf gbaren Sichten k nnen dadurch eingeschr nkt werden dass der Content Server nur die Daten von bestimmten Sichten erh lt Session Einheit die von der JSP Engine verwaltet wird damit logisch zusa
107. kt des Publizierens in Form von statischen Elementen in der Seite festgehalten nderungen in der Themenstruktur die nachtr glich freigegeben werden sind in der statifi zierten Navigation nicht enthalten Die dynamischen Elemente der Seite werden erst dann aktualisiert wenn die Seite neu generiert wird F r personalisierte Seiten ist die Statifizierung grunds tzlich ungeeignet da derartige Seiten dynamisch d h zur Laufzeit auf die eingegebenen Benutzerdaten reagieren m ssen Die Statifizierung von Seiten h ngt von verschiedenen Bedingungen ab Konfiguration des Deploymentsystems Im Admin Client wird festgelegt ob die Statifizierung f r alle oder keine Objekte der Website bzw abh ngig vom Objekt durchgef hrt wird Im Admin Client kann die Option Statifizierte Seiten analysieren akti viert werden Bei dieser Analyse werden die OIDs zu den WCM URLs die auf den Seiten verwendet werden intern vom Content Server gespeichert ndert sich die URL eines referenzierten Objekts werden die entsprechenden Seiten automatisch neu erzeugt und statifiziert Portal Manager API Programmierhandbuch 39 Kapitel 2 Ausf hrliche Informationen zur Konfiguration von Deploymentsystemen finden Sie in der Online Hilfe des Admin Clients Objekttyp Es k nnen nur Objekte statifiziert werden deren Objekttyp mit der Attri butmenge dynamic verkn pft ist Dies sind die folgenden Objekttypen m JSP Seite JSP Thema
108. l che OK Die folgende Tabelle liefert Ihnen eine bersicht ber die Parameter die die mit dem Portal Manager API ausgelieferten Applications erwarten 76 Livelink WCM Server Portal Manager API verwalten Tabelle 4 WCM Applications und ihre Parameter Application Parameter Beschreibung ClickStreamApplication keine keine VipDAVApplication import indexfile name Gibt den Namen von Indexdateien in Verzeichnissen an Wenn neue Ressourcen erzeugt werden werden Dateien mit diesem Dateinamen unabh ngig von der Dateiendung als Indexdatei interpretiert Der Inhalt dieser Dateien wird in die Indexdatei der entsprechenden Collection bernommen Standardwert index lock cleanup interval lock infinite timeout Gibt das Intervall in Millisekunden an in dem nach abgelaufenen Sperrungen gesucht wird Standardwert 600000 entspricht 10 Minuten Gibt die maximale Ablaufzeit einer Sperrung an Standardwert 86400000 entspricht 24 Stunden Portal Manager API Programmierhandbuch 77 Kapitel 3 Application Parameter Beschreibung topic default type WebDAV erlaubt das Erzeugen von Collections Verzeichnisse WCM Objekte eines bestimmten Themen typs Dieser Parameter gibt an welchen Thementyp Objekte haben die durch das WebDAV Kommando MKCOL erzeugt werden Standardwert TOPIC vip default attributes Gibt den Namen der WCM Metadaten an die Uber die W
109. l sseln assoziiert Der gesamte Komplex der JSP Engines ist weitgehend standardisiert Portal Manager API Programmierhandbuch 21 Kapitel 2 Applications Applications sind Beschreibungen beliebiger Anwendungen auf die im Portal Manager API Bezug genommen werden soll Das Portal Manager API umfasst bereits einige Implementationen von Applica tions die den intemen Zugriff auf Livelink WCM Server regeln Allerdings mussen weitere individuelle Implementationen entwickelt werden wenn externe Anwendungen wie etwa E Commerce L sungen ber das Portal Manager API gesteuert werden sollen Applications erm glichen den Zugriff auf Datenquellen Das im Portal Manager API vorgesehene Konzept f r das Verarbeiten des Daten bestandes einer Application basiert auf dem Einsatz von Repositories Repositories sind durch die grundlegenden Klassen modelliert die in Kapitel 4 Klassen und Interfaces des Portal Manager API beschrieben sind Unter Applications wird im Portal Manager API also eine Sammlung von im weitesten Sinne abstrakten Zugriffsverfahren verstanden mit der die Sicht auf beliebige Anwendungen vereinheitlicht wird Neue konkrete Applications k nnen unter Ausnutzung der Application Schnittstelle besonders einfach integriert werden Die Benutzung dieser Schnittstelle ist zwar nicht obligatorisch Sie erhalten dar ber aber den vollen Funkti onsumfang der Session Beans Im Unterschied zu Session Beans ist die Lebenszeit der
110. le_ filter_expr Der Startknoten unter dem die Eintr ge gesucht oder eingef gt werden Beispiel ou software o company example Der Suchausdruck der bei der Suche nach Gruppen und Rollen benutzt wird Der Ausdruck DN wird dabei durch den distinguished name ersetzt Der Ausdruck UID wird ersetzt durch die User ID wenn der Methode keine User ID bergeben wurde durch den distinguished name context factory Die Initial Context Factory f r die LDAP Klassen Zurzeit wird nur die Klasse com sun jndi 1ldap LdapCtxFactory unterst tzt credentials Das Passwort des unter principal angegebenen Benutzers 60 Livelink WCM Server Portal Manager API verwalten Repository Parameter credentials changes Beschreibung Das Passwort des unter pr incipal changes ange gebenen Benutzers credentials read Das Passwort des unter principal read angege benen Benutzers dn pattern group base mappings Das Pattern fur den Aufbau des distinguished name dn wird durch den Schl sselwert ersetzt Beispiel uid ou software o company example wird zu uid smith ou software o company example wenn der aktuelle Schl sselwert smith ist Der Startknoten unter dem die Eintr ge f r die Gruppen des Benutzers gesucht werden Wenn das Attribut nicht gesetzt ist wird der Wert von base f r dieses Attribut genommen Das Mapping zwischen den LDAP Parametern
111. loymentsystem die Statifizierungsoption immer eingestellt k nnen in diesem Deploymentsystem keine Formula rinstanzen mithilfe einer JSP Seite neu angelegt bearbeitet oder statifi ziert werden In einem derartig konfigurierten Deploymentsystem kann mit Formularen nicht sinnvoll gearbeitet werden Obwohl f r die Statifizierung von Formularinstanzen auch das Spezialatt ribut generate_static ausgewertet wird kommt ein anderer Algorithmus als bei JSP Objekten zur Anwendung Formularinstanzen werden ber eine anzugebene JSP Seite statifiziert Im Spezialattribut generate_static steht die OID der JSP Seite die die eigentliche Statifi zierung bernimmt Hat dieses Spezialattribut in einer Formularinstanz keinen Wert wird ersatzweise in der Formularvorlage der Formularinstanz nachgesehen ob ein solcher Wert existiert Ist das der Fall wird dieser Wert f r die Statifizierung herangezogen Der ermittelten JSP Seite wird zur Statifizierung die OID der Formularinstanz bergeben Das Ergebnis im Allgemeinen eine HTML Seite wird anschlie end vom Deployment system erzeugt Referenzen von anderen Objekten auf die Formularin stanz werden automatisch auf diese HTML Seite umgesetzt Wenn f r das Deploymentsystem die Option Statifizierte Seiten analysieren aktiviert ist werden bei jeder nderung der JSP Seite s mt liche Formularinstanzen denen diese JSP Seite zugewiesen ist neu erzeugt und statifiziert Die JSP Seite bestimmt das Layo
112. mmenh ngende Aktionen aus Sicht der Ressourcen auch zusammengefasst werden k nnen Session Bean JavaBean das in einem JSP Skript in Verbindung mit dem Portal Manager API benutzt werden kann Die Lebensdauer eines Session Beans erstreckt sich ber die gesamte Session Statifizierung Beim Statifizieren werden die dynamischen Bestandteile z B einer JSP Seite in statische umgewandelt Das Ergebnis ist reines HTML ohne Java Code Portal Manager API Programmierhandbuch 195 196 Livelink WCM Server Index A absolute_urls Spezialattribut 41 Anlegen Application 70 Repository 56 Anwendungsbeispiele Anlegen von Benutzern in LDAP Uber ein Portal 140 Dynamische Navigationselemente 150 HTML Formular 158 Multicontent Seite 154 Anwendungsintegration 36 Application Interface 117 Applicationimpl Klasse 118 Applications 116 anlegen 70 Einleitung 22 Framework 160 implementieren 162 Internationalisierung 175 Klassenname 71 logischer Name 72 l schen 88 Parameter der mitgelieferten Applications 76 Parameter festlegen 75 Repository zuordnen 86 Repository zuordnen beim Anlegen 73 Ressourcen 74 Sprache 72 verwalten 69 zu Content Server zuordnen 89 Architektur Portal Manager API 19 Authentifizierung 133 B Base Klasse 115 Basisdatentypen 102 Beans 119 Benutzer anlegen in LDAP ber Portal 140 C Content dynamischer 33 ContentHandler Interface 131 Content Objekte plat
113. muss mindestens den Wert 40 betragen Wenn der Text nicht umgebrochen werden soll kann der Wert 0 angegeben werden trace timestamp Die Art des Zeitstempels am Anfang jeder Zeile Einer der vier folgenden Werte ist erlaubt NO Kein Zeitstempel INTERNAL Zeitstempel in Millisekunden SHORT Zeitstempel Stunde bis Millisekunde LONG Zeitstempel Jahr bis Millisekunde trace format 96 Der Format String fur die Trace Ausgaben Folgende Platzhalter sind m glich 0 Der vollst ndige Name der Klasse die den Trace aufruft 1 Der Name der Klasse ohne Package Namen die den Trace aufruft 2 Der Name der Methode aus der der Trace aufgerufen wird 3 Der Name des Objekts das den Trace benutzt 4 Der Name des aktuellen Threads 5 Die Einr ckungstiefe als Zahl 6 Der Trace Text Livelink WCM Server Portal Manager API verwalten Eintrag Bedeutung trace acceptclasses class1 bzw class2 Grunds tzlich werden die Traces durch berpr fen des Eintrags trace filter gefiltert Bei bestimmten Klassen bestehen Ausnahmen Explizit benannte Klassen haben Filterwerte die von den Standard Filterwerten abweichen Dieses Verhalten ist sehr zeitintensiv und kann daher de aktiviert werden Durch den Wert true wird die Ausnahme behandlung der entsprechenden Klassen aktiviert durch den Wert false deaktiviert Detaillierte Informationen finden Sie im Kommentar der Datei trace pro
114. n B Dienstprogramme Repositories amp Click treamRepository ZI Applications t Parameter Name ClickStreamApplication ge 81 Abb 11 Zu einem Repository zugeordnete Applications Zuordnung einer Application zu einem Repository herstellen So ordnen Sie eine Application zu einem Repository zu 1 W hlen Sie Konfiguration gt Repositories gt Repository Name gt Applications 2 W hlen Sie Application zuordnen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol rei Symbol zum Zuordnen einer Application zu einem Repository Der Dialog Application ausw hlen wird ge ffnet Er zeigt eine Liste der noch nicht zugeordneten Applications 3 Markieren Sie die gew nschte n Application s 4 Klicken Sie auf die Schaltfl che OK Zuordnung einer Application zu einem Repository aufheben Um die Zuordnung einer Application zu einem Repository wieder aufzu heben markieren Sie die entsprechende Application im rechten Fenster bereich W hlen Sie Zuordnung der Application aufheben aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol 66 Livelink WCM Server Portal Manager API verwalten Symbol zum Aufheben der Zuordnung einer Application zu einem Ea Repository Struktur unterhalb des Elements Repositories Jedes angelegte Repository hat die Knoten Applications und Parameter Wenn Sie dem Repository Applications oder Parame
115. n Die Navigation sollte keinen Content anzeigen den der Benutzer nicht sehen will oder darf Portal Manager API Programmierhandbuch 35 Kapitel 2 Anwendungsintegration Anwendungen in Websites sind immer dynamische Komponenten Bei der Integration einer Anwendung in eine Website kommt es darauf an die Schnittstelle zum Benutzer hinsichtlich der Daten und des Look and Feel an die Website anzupassen Im Idealfall werden die Daten einer Anwendung als Content oder als Teile von Content interpretiert sodass f r die Pr sentation einer Website die Herkunft des Contents keine Rolle mehr spielt Die L sung dieser Aufgabe h ngt stark davon ab welche Schnittstellen die Anwendung anbietet Das Portal Manager API unter st tzt Sie bei der Programmierung und erm glicht eine solche Integration auf Funktions und Datenebene Platzierung mehrerer Content Objekte auf einer Seite Multicontent Seite Mithilfe des Portal Manager API k nnen beliebig viele Content Objekte auf einer Seite pr sentiert werden wobei einschr nkende Aspekte wie die unter dem Stichwort Personalisierung genannten nat rlich ber ck sichtigt werden k nnen Als Content k nnen Objekte aus WCM verwal teten Website ebenso benutzt werden wie Daten aus Anwendungen Sogar Website und anwendungs bergreifende Content Verkn pfungen stellen kein Problem dar Formulare Durch die M glichkeiten des Portal Manager API k nnen Sie auf sehr einfache Weise fo
116. n Voraussetzung hierf r ist dass Lokalisierungsinformationen ber den entsprechenden Benutzer vorliegen Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm 120 Livelink WCM Server Klassen und Interfaces des Portal Manager API interface y abstract class HttpSession interface Peery P Session Base BindingListener AN interface uses 777 ContentHandler N Abb 32 Die Bean Klassen im Gesamtklassendiagramm Die Klasse SessionApplication Vollst ndiger Name de gauss vip portalmanager application SessionApplication Die Klasse SessionApplication stellt die abstrakte Basisklasse fur alle Beans im Portal Manager API dar Die Klasse stellt den Beans die folgende Funktionalit t zur Verf gung Portal Manager API Programmierhandbuch 121 Kapitel 4 m Zuordnung des Bean zu einer Session Methode zum Erhalten der zugeordneten Application Lokalisierungsinformationen m Methoden zum Erhalten und Setzen des Repository Namens Das Standard Locale und die Ressourcen f r die jeweilige Application werden aus der Konfigurationsdatei application xml ermittelt Die Klasse Internationalization Vollst ndiger Name de gauss vip i18n Internationalization Die Klasse Internationalization bernimmt die Internationalisie rung von Messages Die Internationalisierung wird durch ein Locale Objekt gesteuert Die Basis f r die Internationalisierung sind Resource
117. n Namen f r den Parameter und einen Wert ein 5 Klicken Sie auf die Schaltfl che OK Hinweis Die Repositories ClickStreamRepository und VipDAVLockRepository speichern ihre Daten in einer Datenbankta belle Sie k nnen nur genutzt werden wenn ihnen ein JDBC Pool zugeordnet ist In diesem JDBC Pool werden die Verbindungen zur Datenbank verwaltet Um einen JDBC Pool zuzuordnen geben Sie den Namen des entsprechenden Pools als Wert f r den Parameter store Tabellenname poolname default an Die folgende Tabelle liefert Ihnen eine bersicht ber die Parameter die die mit dem Portal Manager API ausgelieferten Repositories erwarten Portal Manager API Programmierhandbuch 59 Kapitel 3 Tabelle 3 Repositories und ihre Parameter Repository Parameter Beschreibung VipHclConfigRepository ProfileDataRefresh Milliseconds Die Zeit in Millisekunden die ein ungeandertes Profil im Content Client vorgehalten wird bevor es erneut vom Administrationsserver geladen wird SaveWaitMilli seconds Der Abstand in Millisekunden in dem nderungen an den Profildaten gespeichert werden DirectoryRepository authentication Die Authentifizierungsmethode Es sind die Werte SIMPLE keine Verschl sselung und NONE m glich NONE sollte nicht benutzt werden weil in diesem Fall keine Autorisierung durchgef hrt wird und damit keine Daten gelesen und geschrieben werden k nnen base build profi
118. n Wert Hinweis Die Applications die zum Lieferungsumfang des Portal Manager API geh ren ClickStreamApplication VipDAVApplication VipHCLApplication VIPHTMLClientApplication VipObjectApplication VipUserApplication und WebServiceApplication sollten Sie nicht l schen Auch die Basisdaten dieser Applications sollten nicht ge ndert werden So definieren Sie Parameter f r eine Application 1 W hlen Sie Konfiguration gt Applications gt Application Name gt Parameter 2 W hlen Sie Neuer Parameter aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Al Symbol zum Hinzuf gen eines Parameters Der Dialog Neuer Knoten wird ge ffnet Portal Manager API Programmierhandbuch 75 Kapitel 3 I 2x Knoten Parameter Name topic default type Wert TOPIC ok Abbrechen Abb 18 Anlegen eines Parameters f r eine Application 3 Wahlen Sie hier ob Sie einen Knoten oder einen Parameter anlegen m chten Wenn Sie der Application viele Parameter zuordnen m chten ist es sinnvoll die Parameter zu gruppieren Dazu legen Sie zun chst Knoten an und dann unter den Knoten jeweils einen oder mehrere Parameter 4 Wenn Sie die Option Knoten gew hlt haben geben Sie einen eindeutigen Namen f r den Knoten an Haben Sie die Option Parameter gew hlt geben Sie einen Namen f r den Parameter und einen Wert an 5 Klicken Sie auf die Schaltf
119. n von Daten innerhalb dieses Abschnitts unter Angabe eines Profilnamens Alternativ dazu kann Uber die Methode VipProfile setCurrentProfileName String name der Name des f r den Abschnitt VIP_USER zu benutzenden Profils gesetzt werden ber die Methode VipProfile getCurrentProfileName kann der aktuelle Name des f r die benutzerspezifischen Profildaten benutzten Profils erfragt werden VipProfile Key1 Value1 Key2 Value2 TRANSIENT Key3 Value3 Key1 Value1 Key2 Value2 KNOWN_USER Key3Nalue3 Key1 Value1 a Key2 Value2 Profil A Key3 Value3 Key1 Value1 Key2 Value2 VIP_USER Profil B Keyamal aa Key1 Value1 7 Key2 Value2 Profil C Key3 Value3 Datenbank LDAP Livelink Abb 33 Aufbau von VipProfile und der darin verwalteten Daten Portal Manager API Programmierhandbuch 125 Kapitel 4 Der Zugriff auf einzelne Werte eines Profils und deren Manipulation erfolgt f r alle Abschnitte von VipProfile ber die Methoden VipProfile getValue String attribute int type und VipProfile setValue String attribute Value value int type Als type ist dabei jeweils der zu benutzende Abschnitt TRANSIENT KNOWN USER oder VIP_USER anzugeben Die Klasse VipUserBean Vollst ndiger Name de gauss vip portalmanager VipUserBean Der logische Name der dieser Klasse zugrunde liegenden Application ist VipUserApplication Die Klasse VipUserBean ist eine Schnitt
120. neue Website anlegen werden die Repositories f r alle Deploymentsysteme der neuen Website automatisch erzeugt Das Portal Manager API kann auf die Daten beliebiger Deploymentsys teme zugreifen Die einzige Voraussetzung dabei ist dass die entspre chenden Deploymentsysteme dieselbe Datenhaltung verwenden wie der Content Server der im Kontext einer JSP Engine bzw als Webanwen dung in einem Application Server l uft F r den Zugriff auf Objekte mit WebDAV f higen Clients wird ein Servlet verwendet das das Portal Manager API voraussetzt Portal Manager API und Datenhaltungen Das Portal Manager API ben tigt sowohl Zugriff auf die Daten von Deplo ymentsystemen z B die generierten URLs von Objekten als auch auf die WCM Objekte selbst ber Repositories Der Zugriff auf die WCM Objekte ist erforderlich um z B die Metadaten zu lesen und f r Anwen dungen zu verarbeiten Um auf die Daten von Deploymentsystemen zugreifen zu k nnen muss das Deploymentsystem des Repository auf einem Content Server installiert sein der dieselbe Datenhaltung verwendet wie der Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft In einem verteilten WCM System ist es m glich dass z B zwei Edit Deploymentsysteme f r dieselbe Website auf unterschiedlichen Servern installiert wurden Wenn diese beiden Server ber separate Datenhal tungen verf gen werden auch bei der Generierung der Seiten durch
121. ntation f r Applications Jede Application wird im Bedarfsfall von einem Bean oder von mehreren Beans gekapselt Dieses Bean m ssen Sie ebenfalls neu entwickeln Auch daf r ist es empfehlenswert auf einer vorgege benen abstrakten Basisimplementation aufzusetzen Portal Manager API Programmierhandbuch 49 Kapitel 2 Das Bean bernimmt zwei Aufgaben Zun chst bildet es die mehr oder weniger formale Schnittstelle zum JSP Skript und zum Session Handling der JSP Engine Diese Aufgabe wird von der Basisimple mentation des Bean Ubernommen Die weitere anspruchsvollere Aufgabe des Bean ist einfache und machtige Zugriffsmethoden auf m glichst hohem Abstraktionsniveau f r eine Application und ihre Repositories zur Verf gung zu stellen In dem Bean sind die von einer Application zur Verf gung gestellten Basisfunktionalitaten zusammen mit den Zugriffsm glichkeiten der Repositories zu komplexeren Methoden zusammengefasst die in sich konsistent sind Diese Methoden sollten dar ber hinaus einfach sein und die M glichkeiten der zugrunde liegenden Anwendung m glichst nat r lich widerspiegeln Letztendlich sollten Sie in einem JSP Skript m glichst nur die Methoden des Bean benutzen obwohl nat rlich auch immer der Zugriff auf die Application und sogar auf die Repositories m glich ist Die Basisimplementation enth lt Vorkehrungen mit denen Sie die Benutzeroberfl che in unterschiedlichen Sprachen pr sentieren k nnen
122. nwendung beschreiben Zumindestens die folgenden Eigenschaften m ssen von jeder Application Implementation unterst tzt werden Eine Application soll m glichst das Factory Design Pattern erf llen Jede Application Klasse kontrolliert welche Instanzen existieren Portal Manager API Programmierhandbuch 117 Kapitel 4 m Eine Application kann beliebig viele Ressourcen haben die zur Konfiguration z B zur Spracheinstellung dienen Der jewei lige Zweck einer Ressource ist von der konkreten Application abhangig Ressourcen werden als Strings angegeben die Uber den Klassenpfad identifizierte Resource Bundle Dateien im Dateisystem oder in JAR Files bezeichnen Ressourcen werden uber den Standard Class Loader geladen Eine Application benutzt eine beliebige Anzahl von Reposito ries die sich durch den Namen unterscheiden m Eine Application hat ein Standard Locale das f r Lokalisie rungs und Internationalisierungszwecke benutzt werden kann Die genannten Eigenschaften jeder Application Implementation werden als Methoden in der Interface Deklaration umgesetzt Es gibt jedoch nur Methoden um die Eigenschaftswerte zu ermitteln get Methoden die Definition der Eigenschaften durch set Methoden wird von einer Application nicht verlangt blicherweise werden die Eigenschaften implizit ber Konventionen oder durch Properties gesetzt die bei der Initialisierung durch die open Methode anzugeben sind Die Klasse Applicati
123. on 5e Metadatenschema in Version 8 Attribut Wert Attribut Wert acl VipAclValue acl Acl author StringValue created_by User date created DateValue date_created DateValue date expire DateValue date_expire DateValue date release DateValue date_released_at DateValue date released DateValue date_released DateValue direct release StringValue direct_release BooleanValue Portal Manager API Programmierhandbuch 179 Anhang A Metadatenschema in Version 5e Metadatenschema in Version 8 Attribut Wert Attribut Wert edit url StringValue url StringValue Anmerkung In Repositories vom Typ EDIT elements RepositoryMap all_children ListValue email edit StringValue email_edit SetValue email qa StringValue email_qa SetValue email release StringValue email_release SetValue filename StringValue filename StringValue Anmerkung Portal Manager API spezifisch genericl StringValue keywords SetValue generic2 StringValue description StringValue generic3 StringValue target_group StringValue language StringValue language LocaleValue level IntegerValue level IntegerValue Anmerkung Portal Manager API spezifisch linked from RepositoryMap Linked_from SetValue links to RepositoryMap Links_to SetValue name StringValue title StringValue object icon StringValue 180 Livelink WCM Server Metadatenschemata Metadatenschema in Version 5e Metadatenschema in Ver
124. onImpl Vollst ndiger Name de gauss vip portalmanager application ApplicationImpl Eine ApplicationImpl ist eine abstrakte Implementation des Inter face Application auf dessen Basis ohne gro en Aufwand konkrete Application Klassen erstellt werden k nnen ApplicationImpl hat keinen ffentlichen Konstruktor ber die in Application vorgege benen Methoden hinaus existiert nur noch die Methode getInstance als Ersatz f r einen Konstruktor womit das Factory Pattern umgesetzt wird 118 Livelink WCM Server Klassen und Interfaces des Portal Manager API Durch das erste Aufrufen der Methode getInstance String startet ApplicationImpl automatisch den Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft Wenn Sie den Content Server explizit starten m chten benutzen Sie die Methode startPMServer der Klasse Base Die Klasse ApplicationImpl benutzt zur eigenen Initialisierung folgende Konventionen Die Einstellungen der Application werden aus der Konfigurati onsdatei application xml gelesen In der Konfigurationsdatei server xml ist ein Mapping der logischen auf die existierenden Application Namen enthalten m Jedes Repository das ApplicationImpl ben tigt wird durch die Einstellungen aus der Konfigurationsdatei repository xml gelesen In diesen Konfigurationsdateien sind alle Informationen enthalten die es erm glichen Appl ication Objekte als Factory zu erzeugen Dadurch wir
125. onto im LDAP Verzeichnisdienst ange legt wird sich am WCM System anmelden kann und Teil der Zugriffssteuerung wird muss die WCM Benutzerverwaltung auf LDAP basieren Die neu angelegten Benutzerkonten m ssen von dem Administrationsserver Master oder Proxy aus erreichbar sein der f r den Content Server der im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server l uft den Anmelde vorgang durchf hrt m F r das DirectoryRepository sind alle LDAP Verzeichnisdienste nutzbar die auch f r die WCM Benutzerverwaltung verwendet werden k nnen genaue Angaben zu den unterst tzten LDAP Verzeichnisdiensten enth lt die Freigabemitteilung von Livelink WCM Server DirectoryRepository konfigurieren Um auf einen LDAP Verzeichnisdienst zugreifen zu k nnen muss ein Repository vom Typ DirectoryRepository konfiguriert werden Gehen Sie dazu folgenderma en vor 1 Legen Sie im Admin Client ein neues Repository an siehe Abschnitt Repository anlegen auf Seite 56 Geben Sie dabei als Klassenname de gauss vip portalmanager repository DirectoryRepository an 2 Konfigurieren Sie das neue Repository Uber Parameter siehe Abschnitt Parameter eines Repository festlegen auf Seite 58 Portal Manager API Programmierhandbuch 141 Kapitel 5 Die folgende Tabelle enthalt eine Beispielkonfiguration Grundle gende Informationen zum DirectoryRepository erhalten Sie im Abschnitt Die Klasse DirectoryRepositor
126. or Ablauf der Minute abmeldet Nach Ablauf der Minute wird die Lizenz gleichzeitig mit der Abmeldung des Benutzers freigegeben Portal Manager API Programmierhandbuch 129 Kapitel 4 Die Klasse VipObjectFilterBean Vollstandiger Name de gauss vip portalmanager VipObjectFilterBean Die Klasse VipObjectFilterBean erm glicht die WCM Objekte einer Website nach bestimmten Kriterien zu filtern Alle von der Super klasse VipObjectBean geerbten Methoden die bestimmte Objektmengen liefern werden gem der hier definierten Filterbedin gungen zus tzlich eingeschr nkt Filterergebnisse werden in dem VipObjectFilterBean in einem Cache zwischengespeichert Der Cache wird ber den Methoden aufruf applyFilter gef llt Erneutes Filtern mit identischen Filterbedingungen wird dann nicht tats chlich durchgef hrt sondern aus dem Cache abgerufen Der Cache kann explizit gel scht werden Methode invalidateCache um eine erneute Filterung zu erzwingen Die Klasse VipWhatsNewBean Vollstandiger Name de gauss vip portalmanager VipWhatsNewBean Das VipWhatsNewBean erweitert die Filterfunktionalitat des VipObjectFilterBean um das What s New Feature What s New liefert Seiten WCM Objekte die sich in letzter Zeit geandert haben oder neu sind Dazu wird das Freigabedatum mit einem bestimmten Datum verglichen Dieses Datum legt fest wie in letzter Zeit gean dert bzw neu definiert wird Das What s
127. orzunehmen S mtliche Daten die auf Bildschirmphotographien screenshots sichtbar sind dienen lediglich als Beispiel zur Demonstration der Software F r den Inhalt dieser Daten bernimmt IXOS keine Gew hr Dieses Produkt beinhaltet Software die im Rahmen des Projekts OpenSSL f r den Gebrauch im OpenSSL Toolkit http www openssl org bzw die durch die Apache Software Foundation http www apache org entwickelt wurde Marken IXOS IXOS SOFTWARE AG SAP R 3 und SAP ArchiveLink sind eingetragene Marken der SAP AG Microsoft Microsoft Windows NT und die Namen weiterer Microsoft Produkte sind eingetragene Marken der Microsoft Corporation Acrobat Reader Copyright 1987 Adobe Systems Incorporated Alle Rechte vorbehalten Adobe und Acrobat sind Marken von Adobe Systems Incorporated die in bestimmten Rechtsbereichen registriert sein k nnen Siebel ist eingetragene Marke der Siebel Systems Inc Sonstige Produktnamen werden nur zur Identifikation der Produkte verwendet und k nnen eingetragene Marken der entsprechenden Hersteller sein Copyright 2005 Gauss Interprise AG Hamburg Gauss Interprise Inc Irvine California Alle Rechte weltweit vorbehalten Dieses Dokument sowie die zugeh rige Software sind Eigentum der Gauss Interprise AG oder ihrer Zulieferer und durch Gesetze zum Schutze des Urheberrechts und andere Gesetze gesch tzt Sie werden unter einer Lizenz vertrieben durch welche die Nutzung Repro
128. perties Mit diesem Eintrag wird angegeben f r welche Klasse n das Tracing eingeschaltet werden soll M gliche Werte sind com org pkg Class1 Tracing f r die Klasse com org pkg Tracing f r das Package com org pkg Tracing f r das Package mit allen Unterpackages Portal Manager API Programmierhandbuch 97 98 Livelink WCM Server KAPITEL 4 Klassen und Interfaces des Portal Manager API In diesem Kapitel werden Ihnen die Klassen vorgestellt die f r das Verst ndnis der Konzepte des Portal Manager API ben tigt werden 4 1 Klassendiagramme und Klassen beschreibungen Klassendiagramme Den einzelnen Abschnitten dieses Kapitels sind zur bersicht Klassendia gramme zugeordnet Das Gesamtdiagramm finden Sie als Datei unter WCM Installationsverzeichnis documentation manual portalManagerClassDiagram pdf Die Diagramme im Text stellen die jeweils relevanten Ausschnitte daraus dar Im Gesamtdiagramm sind die thematisch zusammengeh renden Klassen in einer bestimmten Farbe gezeichnet Portal Manager API Programmierhandbuch 99 Kapitel 4 Fur die Klassendiagramme wird das folgende an UML Diagramme angelehnte Schema verwendet m Wei e K sten bezeichnen Klassen oder Interfaces die aus anderen Teilen stammen Andere Teile k nnen Klassen aus anderen Themenbereichen des Portal Manager API sein aber auch solche die aus Java Basisbibliotheken stammen Java Foundation Classes oder Java Extens
129. pezifi zierten Methoden implementiert werden F r alle Repository Klassen die nur bestimmte Methoden unterst tzen sollten die nicht unterst tzten Methoden eine sinnvolle Exception werfen 164 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Ableiten von der Klasse ApplicationImpl Die Klasse ApplicationImpl und die von ihr abgeleiteten Klassen haben folgende Aufgaben Verwalten aller Repositories die mit einer Application assoziiert sind Bereitstellen der Business Logik f r eine Application Alle Methoden die f r die Unterst tzung des Portal Manager API ben tigt werden werden durch die Basisklasse ApplicationImpl zur Verf gung gestellt und m ssen nicht durch eine abgeleitete Application Klasse implementiert werden Die Konfiguration einer Application wird ber den Admin Client vorgenommen Allgemeine Richtlinien zum Implementieren der Business Logik f r eine bestimmte Application gibt es nicht Ableiten von der Klasse SessionApplication Die Klasse SessionApplication und die von ihr abgeleiteten Klassen haben folgende Aufgabe Kapseln einer Application als JavaBean zur Unterst tzung der JSP Application Assoziieren einer Application mit einer bestimmten HTTP Session und der HTTP Session mit einem WCM Benutzer m Pflegen eines Runtime Locale f r die Application m Zur ckgeben von Meldungen und Ressourcen entsprechend der aktuellen Locale Einstellung Dies wird ber das Intern
130. positoryImpl Diese Repository Implementation ist die abstrakte Basisimplementa tion eines Repository f r alle mit Livelink WCM Server ausgelieferten Repository Klassen Ein Login Repository ist als Interface LoginRepository modelliert Es erweitert das Interface Repository um Methoden zur Pr fung der Anmel dung Sessions Bei jedem Zugriff auf Repository Inhalte muss eine Session angegeben werden Die in der Session enthaltenen Informationen k nnen vom Repo sitory genutzt werden Portal Manager API Programmierhandbuch 113 Kapitel 4 Eine Session beschreibt den aktuellen Verarbeitungskontext zwischen Browser und Webserver Dar ber hinaus enth lt die Session eine ID ber diese ID ist der Name des Benutzers verf gbar der sich f r die Session angemeldet hat Dieser Benutzername sollte verwendet werden um Account Informationen bei einem Login Repository abzufragen Das Interface Session ist im Zusammenhang mit den sessionbezogenen Klassen dargestellt siehe Abbildung 32 Die Bean Klassen im Gesamt klassendiagramm auf Seite 121 Klassendiagramm Die folgende Abbildung zeigt den relevanten Ausschnitt aus dem Gesamt klassendiagramm abstract class Base interface Repository interface Login Reposito Abb 30 Die Repository Klassen im Gesamtklassendiagramm 114 Livelink WCM Server Klassen und Interfaces des Portal Manager API 4 3 Application und Bean Klassen Basisklasse Bean Appl
131. r eigentliche Vorgang des Implementierens einer Application die vom Portal Manager API abgeleitet ist umfasst folgende Schritte 1 Implementieren der Repositories Applications SessionApplication Objekte 2 Konfiguration des Portal Manager API um die neue Application zu verwenden siehe Abschnitt 3 2 Applications verwalten ab Seite 69 Ableiten der Application spezifischen Klassen Um dem Benutzer den Arbeitsablauf zu erleichtern stellt das Portal Manager API abstrakte Basisklassen mit den Basisimplementati onen aller Funktionalit ten zur Verf gung die mit dem Portal Manager API zusammenh ngen Eine benutzer spezifische Appli cation muss dann nur eine bestimmte Basisklasse implementieren Die 162 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API allgemeine Hierarchie zum Entwickeln von Applications ist in der folgenden Abbildung dargestellt interface Repository from respository interface Application from application abstract class Applicationimpl from application class MyApplication from customer Element um die Element das die Element das eine Application in einem Business Logik einer Datenquelle repr sentiert die JavaBean zu verpacken Application repr sentiert im Kontext der Application das in einer JSP Seite verwendet wird instanziiert werden kann Abb 38 Allgemeine Hierarchie zum Entwickeln von Applications Ableiten von der Klasse RepositoryImpl W
132. rden kann Das Interface RepositoryIterator Vollst ndiger Name de gauss vip repository RepositoryIterator Ein RepositoryIterator ist eine Aufz hlung Uber die Schl ssel Datenwert Paare in einer RepositoryMap in denen die Datenwerte immer vom Typ RepositoryEntry sind Ein neuer Iterator steht per Definition vor dem ersten Paar Um auf die Paare zugreifen zu k nnen muss der Iterator f r das erste Paar und die darauf folgenden Paare mit einer der next Methoden weiterger ckt werden 110 Livelink WCM Server Klassen und Interfaces des Portal Manager API Repositories Zugriff auf externe Ressourcen Jeder Zugriff auf externe Ressourcen Anwendungsdatenbest nde erfor dert einerseits die Definition der Ressource wie etwa Hostname Port nummer Anwendungsnamen und andererseits Autorisierungsinformationen f r den Zugriff Benutzername und Pass wort Im Portal Manager API sind Anwendungsdatenbest nde durch Reposito ries modelliert Die Initialisierungsdaten zur Definition der Ressource URL Benutzerkennung Passwort und diverse Einstellungsparameter werden einem Repository als Parameter bergeben Die erwarteten Eintr ge sind f r jede Anwendung unterschiedlich Optionen bei der Autorisierung Sofern eine Anwendung eine Autorisierung erfordert k nnen hierzu zwei verschiedene Wege gew hlt werden Autorisierungsdaten k nnen entweder direkt bergeben oder zentral verwaltet werden Wie bereits beschrieben k nnen
133. rechts von der Themenstruktur 2 innerhalb der Themenstruktur Standardwert 0 Gibt an ob die Aktionsliste des Content Clients Classic beim Start einer asynchronen Aktion automatisch ge ffnet werden soll M gliche Werte sind false ffnen oder true nicht ffnen Standardwert false DEFAULT_VALUE_FOR_NO_OBJECT PREVIEW _MODE Gibt an ob die Objektvorschau des Content Clients Classic ausge schaltet werden soll M gliche Werte sind false nicht ausschalten oder true ausschalten Standardwert false DEFAULT_VALUE_FOR_USE DOWNLOAD _APPLET Gibt an ob das Download Applet des Content Clients Classic verwendet werden soll M gliche Werte sind false nicht verwenden und true verwenden Standardwert true Portal Manager API Programmierhandbuch 81 Kapitel 3 Application Parameter DEFAULT _VALUE_FOR_USE INTEGRATED_HTML_EDITOR Beschreibung Gibt an ob der integrierte HTML Editor des Content Clients Classic verwendet werden soll M gliche Werte sind false nicht verwenden und true verwenden Standardwert false DEFAULT_VALUE_FOR_USE NAVIGATION_APPLET Gibt an ob das Navigations Applet des Content Clients Classic verwendet werden soll M gliche Werte sind false nicht verwenden und true verwenden Standardwert false DEFAULT_VALUE_FOR_USE SEPARATE_PREVIEW_WINDOW Gibt an ob fur die Objektvorschau des Content Clients
134. rein fachte Benutzeroberfl che f r die Umsetzung ben tigen Obwohl der Content Client sehr einfach zu bedienen ist stellt er doch einen erheblichen Funktionsumfang bereit F r die Erstellung einfacher identisch strukturierter Dokumente wie Artikelseiten und Pressemittei lungen wird jedoch nur ein kleiner Teil dieser Funktionen ben tigt Durch Bereitstellung dieser Funktionen ber ein Formular l sst sich die Einarbei tungszeit der Benutzer betr chtlich verk rzen Letzteres ist unter anderem dann wichtig wenn externe Ressourcen in den Erstellungsprozess einer Website eingebunden werden sollen Ein professionelles Web Content Management System wie Livelink WCM Server erlaubt es dass externe Mitarbeiter dezentral an ihrem jeweiligen Standort arbeiten So k nnen etwa die Werbetexter und Bildagenturen zur Erstellung von Artikelseiten auf diese Weise einge bunden werden Ein Formular gibt die Struktur des damit erzeugten Content Objekts fest vor Erzeugt werden XML Objekte so genannte Formularinstanzen deren Struktur der des Formulars entspricht Die Elemente dieser XML Objekte k nnen dann auf einer HTML Seite beliebig angeordnet und formatiert werden Hinweis Es k nnen nat rlich auch andere Objekttypen erzeugt werden ba 158 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Konzeption Die formularbasierte Eingabe muss immer als klar definierte Anwendung r
135. rfaces Comparable Cloneable und Serializable Die Objektdaten k nnen als Attribut Wert Paare dargestellt werden und werden so vom Portal Manager API verwaltet Weitere Informationen zu diesem Thema finden Sie im WCM Java API Programmierhandbuch 102 Livelink WCM Server Klassen und Interfaces des Portal Manager API Schlusselwerte Keys Da sowohl die Klasse TupelMap als auch die Klasse RepositoryMap im Wesentlichen die Zuordnungen von Schl sseln zu Datenwerten beschreiben wurde ein Interface Key eingef hrt Es k nnen aber belie bige Klassen als Schl ssel in den Repositories benutzt werden sofern sie das Interface Key implementieren Datenwerte Values Die Werte die gespeichert werden m ssen dem Interface Value entspre chen Die Basisdatenimplementationen die mit dem Portal Manager API ausgeliefert werden tragen bis auf einen Fall als Suffix im Klassennamen die Bezeichnung Value Auch hier k nnen andere als die ausgelieferten Klassen benutzt werden solange sie das Interface Value ber cksich tigen Das Interface Value Vollst ndiger Name de gauss lang Value Das Interface Value repr sentiert einen Datenwert Datenwerte werden in der Klasse Tupe1Map eingesetzt allerdings nicht als Schl ssel dazu wurde das Interface Key vorgesehen das das Inter face Value noch erweitert Ein Datenwert muss vergleichbar klonbar und serialisierbar sein daher basiert das Interface Value auf den drei entsprechenden Inter
136. rgleichende Ubersicht hierzu finden Sie im Anhang A Metadatenschemata 64 Livelink WCM Server Portal Manager API verwalten Parameter eines Repository l schen Um einen Parameter aus der Konfiguration eines Repository zu entfernen markieren Sie den zu l schenden Parameter im rechten Fensterbereich W hlen Sie Parameter l schen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol af Symbol zum L schen eines Parameters Allgemeine Einstellungen von Repositories So bearbeiten Sie die Einstellungen eines Repository 1 Wahlen Sie Konfiguration Repositories 2 Markieren Sie das gew nschte Repository im linken Baum Die Einstellungen werden im rechten Fensterbereich angezeigt Sie k nnen den Namen der Java Klasse des Repository nachtr glich ndern Der Name des Repository selbst wird w hrend des Anle gens festgelegt und kann sp ter nicht ge ndert werden 3 Klicken Sie auf die Schaltfl che bernehmen Application zu einem Repository zuordnen ber Konfiguration Repositories Repository Name gt Applications erhalten Sie eine bersicht ber die Applications die diesem Repository zugeordnet sind Die zugeordneten Applications werden im rechten Fensterbereich in einer Liste angezeigt Portal Manager API Programmierhandbuch 65 Kapitel 3 Konfiguration Pools ze Eigene Verbindungstypen 8 Server yy Websites amp Deploymentsysteme E 7 Server Agente
137. rhandbuch 151 Kapitel 5 Es ist auch m glich sich die URL eines Objekts Uber das RepositoryEntry ausgeben zu lassen wobei jedoch immer nur die URL aus dem entsprechenden Deploymentsystem angegeben werden kann Sinnvollerweise sollten jedoch jeweils die Hyperlinks des Systems ange zeigt werden in dem sich der Benutzer gerade befindet Eine entspre chende Methode wird von der Klasse VipObjectBean bereitgestellt Realisierung Im Folgenden wird das Aufbauen der JSP Seite skizziert 1 Importieren Sie die ben tigten Klassen Beans instanziieren Sie mit einer speziellen JSP Anweisung 2 Stellen Sie sicher dass alle verwendeten WCM Beans initialisiert sind Der Klasse VipObjectBean muss bekannt sein welches Repository verwendet werden soll Das Repository legt das Deploymentsystem fest F r das Repository wird blicherweise das WCM Tag VIPDEPLOYMENT_NAME genutzt das auf das Deploymentsystem des Objekts verweist Das WCM Tag VIPOID verweist hingegen auf die OID des WCM Objekts Das folgende Code Beispiel enth lt den JSP Code mit dem der RepositoryIterator gelesen und durchlaufen wird betrifft alle JSP Themen unterhalb der WCM OID Die Anweisungen werden so in den HTML Code kodiert dass z B f r jeden RepositoryEntry ein Listenein trag oder eine Tabellenzeile ausgegeben wird Ein Hyperlink kann dann aus dem Namen des Eintrags und der URL des WCM Objekts zusam mengesetzt werden 152 Livelink WCM Server Hinweise zur
138. rmularbasierte Anwendungen entwickeln ber formu larbasierte Schnittstellen lassen sich beispielsweise Objekte in einer mit Livelink WCM Server verwalteten Website anlegen und bearbeiten Unter dem Begriff Formular versteht man eine JSP Seite die eine formu larbasierte Schnittstelle zum Anwender bietet ber ein solches Formular werden Daten f r eine Formularinstanz geholt und bearbeitet 36 Livelink WCM Server Konzepte Die M glichkeiten der formularbasierten Arbeit werden durch zwei beson dere Objekttypen repr sentiert Formularvorlage und Formularinstanz Formularvorlage Vorlage die den Typ Formular definiert Formularinstanz Inhalte eines Formulars einer Formularvorlage in Form von XML Daten Um auf der Grundlage dieser Objekttypen eine formularbasierte Schnitt stelle anzubieten m ssen au erdem die eigentlichen Formulare als JSP Seiten mit entsprechenden Auswahl bzw Eingabem glichkeiten entwi ckelt werden Die Formularvorlage dient im Wesentlichen nur zum Identifizieren und Typisieren der unterschiedlichen Formularinstanzen Die Formularinstanz das Exemplar eines ausgef llten Formulars ist eine XML Datei die eine bestimmte Formularvorlage als WCM Vorlage haben kann au erdem die vier Objekttypen XML Dokument XML Vorlage XSLT Dokument und XSLT Vorlage zur Verf gung Ausf hrliche Informationen zu diesen Objekttypen finden Sie im Content Client Benutzerhandbuch
139. rnationalisierung Im folgenden Diagramm wird die Architektur des Portal Manager API mit allen f r die Internationalisierung relevanten Aspekten dargestellt Sprachspezifische Version HTML Seite JSP Spracheinstellung Locale der JVM des Browsers HTTP GET lt Accept Language gt Browser Webserver lt localized page gt JSP Engine Locale Einstellung entsprechend WCM Spracheneinstellung in der Datei application xml Abb 41 Architektur des Portal Manager API mit Aspekten der Internationalisierung Die Architektur basiert auf den folgenden Komponenten ein Browser als Client f r das HTTP Protokoll m ein Webserver als Server f r das HTTP Protokoll m eine JSP Engine als Adapter zwischen Webserver und Java Anwendungen Komponenten des Portal Manager API z B JavaBeans die in einer JSP Engine ausgef hrt werden Portal Manager API Programmierhandbuch 171 Kapitel 5 Wie im Diagramm beschrieben verf gt jede dieser Komponenten ber eigene sprach bzw internationalisierungsrelevante Einstellungen Der Browser kann eine bestimmte Sprache ber den HTTP Header anfordern m Der Webserver muss verschiedene Dokumentversionen HTML JSP Seite Grafiken usw bereithalten Die JVM die die JSP Engine ausf hrt hat eine standardm ige Locale Einstellung Die WCM Beans und WCM Application sind Locale spezifisch Die standardm ige Spracheinstellung f r eine Application und d
140. s tzliche Funktionen die h ufig in der Verarbeitung von Datenbest nden ben tigt werden Filterung Eine Filterung wird allgemein durch das Interface Filter vollst ndiger Name de gauss vip lang filter Filter beschrieben f r das mehrere Implementationen bereitgestellt sind Komplexe Filter k nnen aus einfachen Filtern nach dem Baukastenprinzip zusammengef gt werden Detaillierte Informationen zum Thema Filterung finden Sie im WCM Java API Programmierhandbuch Portal Manager API Programmierhandbuch 105 Kapitel 4 Sortierung Eine Sortierung wird durch das Interface Sort vollstandiger Name de gauss lang Sort beschrieben Die einzige Implementierung des Interface Sort stellt die Klasse KeySort dar Diese Klasse wird dazu verwendet ein Sortierkriterium f r die in einer RepositoryMap enthal tenen RepositoryEntry Objekte zu definieren siehe Abschnitt RepositoryMap und zugeh rige Klassen ab Seite 107 Die Klasse KeySort enth lt hierzu einen Schl ssel und eine Sortierreihenfolge Der Schl ssel bestimmt das Sortierkriterium der RepositoryEntry Objekte Zum Vergleich der RepositoryEntry Objekte wird der Wert herange zogen den die RepositoryEntry Objekte f r den angegebenen Schl ssel enthalten Beispiel Eine RepositoryMap enth lt drei Objekte der Klasse RepositoryEntry Der erste RepositoryEntry enth lt f r den Schl ssel A den Wert Berta der zweite RepositoryEntry enth lt f r diesen Schl ssel
141. schte Application 4 Klicken Sie auf die Schaltfl che OK Zuordnung einer Application zu einem Content Server aufheben Um die Zuordnung einer Application zu einem Content Server wieder aufzuheben markieren Sie die Application im rechten Fensterbereich W hlen Sie Zuordnung der Application aufheben aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol Symbol zum Aufheben der Zuordnung einer Application zu einem Content Server 90 Livelink WCM Server Portal Manager API verwalten 3 3 LDAP Durch den Einsatz eines LDAP Verzeichnisdienstes haben Sie die M glichkeit den Verwaltungsaufwand im Zusammenhang mit der Konfi guration und Pflege von Benutzerdaten erheblich zu reduzieren Das Portal Manager API steht auf allen Content Servern zur Verf gung die im Kontext einer JSP Engine bzw als Webanwendung in einem Application Server laufen Diese Content Server wiederum greifen auf die gemein same Datenhaltung des WCM Systems zur ck Deshalb k nnen die Benutzer Gruppen und Rolleninformationen eines LDAP Verzeichnis dienstes vom Portal Manager API bernommen und genutzt werden Detaillierte Informationen zur Konfiguration einer LDAP Anbindung finden Sie im Livelink WCM Server Installationshandbuch Das Portal Manager API bietet au erdem die M glichkeit direkt auf den LDAP Verzeichnisdienst zuzugreifen Die LDAP Unterst tzung im Portal Manager API ist durch die Klasse DirectoryRepository gegeben
142. sen ist bestimmt ggf wird dazu die Vorlagenkaskade durchsucht 3 Der Timeout Wert wird aus der Konfiguration des Deployment systems gelesen Es wird also nur dann der im Admin Client festgelegte Timeout Wert verwendet wenn weder f r das zu statifizierende Objekt noch f r eine seiner Vorlagen das Spezialattribut timeout einen g ltigen Wert hat Hinweis Die Statifizierung wird mithilfe des Content Servers durch gef hrt der im Kontext der JSP Engine bzw als Webanwendung im Application Server l uft Insbesondere bei berlastung dieses Content Servers kann es zur berschreitung des zul ssigen Timeout Werts und damit verbunden zum Abbruch der Statifizie rungsversuche und zu Fehlermeldungen kommen W hlen Sie deshalb die Timeout Werte entsprechend gro z gig absolute_urls Das Spezialattribut absolute_urls spielt u a bei der Statifizierung von Formularinstanzen eine besondere Rolle siehe Abschnitt Stati fizierung von Formularinstanzen auf Seite 43 Portal Manager API Programmierhandbuch 41 Kapitel 2 Objektabhangige Statifizierung Ein Objekt dessen Typ mit der Attributmenge dynamic verkn pft ist verf gt ber das Spezialattribut generate_static Mithilfe dieses Attri buts k nnen Sie im Metadaten Dialog des Content Clients einstellen wie der Code des Objekts und sofern vorhanden seiner Vorlage n statifi ziert werden soll Voraussetzung daf r ist dass im Admin Client f r das D
143. sion 8 Attribut Wert Attribut Wert oid StringValue oid Objectid pathname StringValue pathname StringValue prod url StringValue url StringValue Anmerkung In Repositories vom Typ PROD qs url StringValue url StringValue Anmerkung In Repositories vom Typ QA status StringValue state ObjectState status icon StringValue Anmerkung erreichbar ber ObjectState subtitle StringValue subtitle StringValue suffix StringValue suffix StringValue Anmerkung Portal Manager API spezifisch template StringValue template Objectid topic StringValue topic Objectid topics RepositoryMap type StringValue type ObjectType url StringValue url StringValue Portal Manager API Programmierhandbuch 181 Anhang A version IntegerValue version Version vip edit url StringValue surrogate_url StringValue Anmerkung In Repositories vom Typ EDIT vip qs url StringValue surrogate_url StringValue Anmerkung In Repositories vom Typ QA website StringValue website StringValue codebase StringValue category StringValue date_modified DateValue deployment_hint StringValue Anmerkung Enth lt Dateinamen mit Endung modified_by User released_by User 182 Livelink WCM Server Metadatenschemata Portal Manager API Programmierhandbuch 183 184 Livelink WCM Server ANHANG B Caching Fur den Betrieb von Livelin
144. speichert die per Hyperlink erreichbar sind sowie die Objekte von denen aus das aktuelle Content Objekt per Hyperlink erreichbar ist Au erdem werden die Verweise auf das in der Themenstruktur berge ordnete sowie auf alle untergeordneten bzw auf gleicher Ebene liegenden WCM Objekte gespeichert Weitere Informationen f r eine Navigation sind durch den Themenbaum und die eventuelle Verkn pfung eines Content Objekts mit einem Vorlageobjekt gegeben Wenn sich die zugrunde liegenden Metadaten ndern ndert sich bei einer entsprechenden Implementation der Inhalt automatisch ohne dass manuelle Anpassungen n tig sind L schen Kopieren Verschieben von Objekten f hrt dann nicht mehr dazu dass die Navigationselemente veralten Mit dem Portal Manager API lassen sich Navigationselemente dynamisch erzeugen So k nnen etwa die Unterthemen eines Hauptthemas automa tisiert als Unterpunkte eines Men s ausgegeben werden oder Sitemaps dem Benutzer einen berblick ber die Website Struktur geben In beiden F llen werden nderungen in der Struktur der Website ohne erneute Bearbeitung f r die Navigation ber cksichtigt 150 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Werden Navigationselemente mit Methoden des Portal Manager API dynamisch generiert so k nnen die Zugriffsrechte der Benutzer ber ck sichtigt werden Ein Benutzer hat nur die Navigationsm glichkeiten f r die er berechtigt ist So s
145. ss immer ein Bereini gungs Thread laufen Die Zeit sollte mindestens 10 Sekunden betragen empfohlen wird eine Zeitdauer von 60 bis 300 Sekunden clearer entries trace filter trace indentspaces Die Mindestanzahl von Eintr gen in der Thread Tabelle damit die Bereinigung dieser Tabelle Uber haupt durchgef hrt wird Dieser Eintrag wird nur beachtet wenn der Bereinigungs Thread l uft Es sollten 50 bis 200 Eintr ge in der Tabelle vorhanden sein Die erzeugten Thread Objekte benutzen den hier angegebenen Filterwert um zu entscheiden welche Trace Ausgaben zum Logging Channel geschrieben werden Der Filterwert wird als Bit Feld interpretiert Jedes Bit steht f r eine Art von Trace Information z B Eintritt in eine Methode Verlassen einer Methode Warnung Fehler Der Wert 0 bewirkt dass kein Tracing durchgef hrt wird Der Filterwert kann auch als Hex Zahl angegeben werden indem Ox vorangestellt wird das Setzen aller Bits f r bitori entierte Filterimplementationen im Logging Channel kann mit dem Wert 0x7F erreicht werden Detaillierte Informationen finden Sie im Kommentar der Datei trace properties Die Anzahl von Leerzeichen die pro Einr ckungs tiefe hinter dem Datumsstempel ausgegeben werden soll Portal Manager API Programmierhandbuch 95 Kapitel 3 Eintrag Bedeutung trace width Die Breite der Ausgabezeilen Die Ausgabe wird an Wortgrenzen umgebrochen Die Breite
146. ssenbeschreibung 101 Klassendiagramme 99 L LDAP DirectoryRepository Klasse 91 Lebenszyklus eines WCM Objekts 46 Locale 170 Login Repositories 112 L schen Application 88 Repository 68 Metadatenschemata 179 Multicontent Seite 154 Livelink WCM Server N Navigationselemente 34 Neu Application 70 Repository 56 Neue Benutzer in LDAP anlegen 140 P Parameter einer Application festlegen 75 eines Repository festlegen 58 mitgelieferte Applications 76 VipDAVApplication 77 VipHCLApplication 78 VipHTMLClientApplication 80 VipObjectApplication 84 VipUserApplication 84 WebServiceApplication 84 Personalisierung 35 Platzierung mehrerer Content Objekte 36 Portal Benutzer in LDAP anlegen 140 Portal Manager API Anwendungsbeispiele 140 Architektur 19 Integration 24 Staging 46 Profil 123 R Repositories 111 anlegen 56 Application zuordnen 65 Einleitung 23 Klassenname 57 Login Repositories 112 l schen 68 Name 57 Parameter festlegen 58 Index Typen 112 verwalten 55 RepositoryEntry Klasse 108 RepositoryEntrylterator Interface 109 Repositorylmpl Klasse 113 Repositorylterator Interface 110 RepositoryMap 107 RepositoryMap Klasse 109 S Schl sselwerte Keys 103 SecurityManager JVM mit 169 JVM ohne 168 Session 21 113 SessionApplication Klasse 121 SessionBean Klasse 123 Session Beans 21 Session Management 133 137 Sicherheitsaspekte 168 Sortierung 106 Spezialattribute Statifizierun
147. stellt das Portal Manager API die Grundlage f r die Personalisierung von Websites dar Das Portal Manager API ist in Application Servern die der J2EE Spezifi kation gen gen einsetzbar und bietet dar ber die M glichkeit zur Lasten verteilung dynamic load balancing und Ausfallsicherheit session fail over Au erdem dient das Portal Manager API als Plattform zur Enter prise Application Integration EAI Das Portal Manager API bildet die Basis f r eine Vielzahl von Connector Produkten mit deren Hilfe Sie die Verbindung zu Produkten anderer Hersteller aufbauen k nnen Das Portal Manager API ist kein Produkt mit dem Sie nach der Installa tion fertige Webportale erhalten Es ist als Framework zu betrachten das Sie beim Erstellen von Webportalen und bei den daf r notwendigen Probleml sungen unterst tzt Eine nahtlose Integration in Livelink WCM Server ist dabei garantiert Das Portal Manager API versetzt Sie in die Lage schnell in sich konsistente und den Anspr chen moderner Websites entsprechende dynamische Komponenten nach Ihren eigenen Vorstellungen zu entwickeln Portal Manager API Programmierhandbuch 11 Kapitel 1 Achtung Das falsche Verwenden der in diesem Handbuch beschrie benen Programmierschnittstelle kann zu Fehlern im WCM System bis hin zum Absturz des Systems und zu Datenverlusten f hren Durch eine falsche Programmierung k nnen auch Probleme in den Bereichen Performance und Systemressourcen auftreten Es
148. ter zugeordnet haben erscheinen diese Eintr ge unterhalb des jeweiligen Knotens in der folgenden Abbildung wurden dem ClickStreamRepository die Para meter max records store table und tosql zugeordnet Konfiguration Pools Eigene Verbindungstypen E Server y websites L Deploymentsysteme E 7 Server Agenten TB Dienstprogramme Repositories amp ClickStreamRepository ZI Applications E t Parameter max records store table tosql amp groups amp InternetSite_edit InternetSite_prod Sh InternetSite_gs Sh roles Sh users Sh VipDAVLockRepository Sh VipHCLConfigRepository amp VIPHTMLClientConfig CROM CEC ee ge TE SCs ns ns cs Abb 12 Struktur unterhalb des Elements Repositories Portal Manager API Programmierhandbuch 67 Kapitel 3 Repository loschen So l schen Sie ein Repository 1 Wahlen Sie Konfiguration Repositories 2 Markieren Sie das gew nschte Repository im linken Baum 3 W hlen Sie Repository l schen aus dem Kontextmen oder klicken Sie auf das entsprechende Symbol a Symbol zum L schen eines Repository 4 Best tigen Sie die Sicherheitsabfrage durch Klicken auf die Schalt fl che Ja Die Konfiguration des Repository wird aus dem WCM System entfernt die dazugeh rige Java Klasse wird jedoch nicht gel scht 68 Livelink WCM Server Portal Manager API ver
149. the website RepositoryMap websiteMap new RepositoryMap websiteMap putEntry VIPSITE null newUserEntry putValue AttributeName WEBSITES websiteMap assign the user to a group RepositoryMap groupMap new RepositoryMap groupMap putEntry testgroup null newUserEntry putValue AttributeName GROUPS groupMap create the user vub createNewUser ldap uid newUserEntry gt lt p gt Created new user account lt vub loadEntry ldap uid gt lt p gt lt else gt lt p gt Please insert data into all fields lt p gt lt gt lt html gt Portal Manager API Programmierhandbuch 149 Kapitel 5 Dynamische Navigationselemente erzeugen Die konsistente Navigation einer Website dient dazu den Content fur den Benutzer auf einfache Weise zug nglich zu machen Dar ber hinaus erm glicht die Navigation einem Benutzer durch Hyperlinks einen schnellen unkomplizierten Wechsel zu assoziiertem Content etwa zu themenverwandten Seiten oder zu Seiten die in der hierarchischen Struktur benachbart sind Auch Sitemaps geh ren zu den Navigationsele menten Sie bereiten jedoch im Allgemeinen nicht den Kontext der aktu ellen Seite auf sondern Informationen ber die gesamte Website In Livelink WCM Server stehen allein durch die Speicherung von Meta daten zu jedem Content Objekt schon gen gend Informationen f r eine Navigation zur Verf gung So werden zu jedem Content Objekt diejenigen Objekte ge
150. tr userPassword 3 Ordnen Sie der Application VipUserApplication das neue Reposi tory zu siehe Abschnitt Repository zu einer Application zuordnen auf Seite 86 Portal Manager API Programmierhandbuch 145 Kapitel 5 Methoden zur Benutzung des DirectoryRepository Um auf die Daten des LDAP Verzeichnisdienstes zugreifen und diese beeinflussen zu k nnen stehen die Methoden zur Verf gung die die Klasse VipUserBean von der Klasse ObjectBean erbt m containsKey lt repositoryName gt key m createEntry lt repositoryName gt key data m loadEntry lt repositoryName gt key m removeEntry lt repositoryName gt key m storeEntry lt repositoryName gt key data Der Parameter key dieser Methoden muss ein String oder ein StringValue sein Der Wert des Parameters muss der voll qualifizierte distinguished name DN ein Benutzer Gruppen oder Rollenname sein Wenn kein DN als Parameter key spezifiziert wurde sucht das DirectoryRepository in der folgenden Reihenfolge nach einem Prin cipal 1 nach einem Benutzer dessen DN aus dem Wert des Parameters dn pattern des Repository gebildet ist 2 nach einer Gruppe mit dem ermittelten DN cn key group base 3 nach einer Rolle mit dem ermittelten DN cn key role base Der Parameter data der Methoden wie auch die R ckgabewerte der meisten Methoden sind RepositoryEntry Objekte Diese RepositoryEntry Objekte enthalten die Attribute des LDA
151. tzer vom Betriebssystem gegeben werden Eine detaillierte Beschreibung des SecurityManager finden Sie in der Dokumentation zu Java 2 Portal Manager API Programmierhandbuch 169 Kapitel 5 5 6 Internationalisierung Das Internet und Intranet Anwendungen werden zunehmend global verwendet und f r Benutzer in verschiedenen L ndern ausgelegt Dadurch besteht ein potenzieller Bedarf eine auf dem Portal Manager API basierende Anwendung zu internationalisieren Die Applications basieren auf Java sodass sie automatisch die Internatio nalisierungsunterst tzung erben die Java bietet Dabei handelt es sich um m Locale das Locale Objekt als einfacher Identifier f r eine Sprache oder eine Region m lokalisierte Ressourcen das ResourceBundle als Container f r alle Locale spezifischen Befehle und Objekte m Kalender und Zeitzonenunterst tzung m Locale spezifische Formatierung von Zahlen Daten etc m Locale spezifische String Methoden z B Locale spezifisches Sortieren S mtliche Funktionen sind detailliert in der Spezifikation von Java 2 beschrieben Als Webanwendung verwendet das Portal Manager API neben der Programmiersprache Java weitere Softwarekomponenten Die Architektur und die Implikation dieser Architektur f r die Internationalisierung werden in den folgenden Abschnitten erkl rt 170 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Architektur des Portal Manager API und Inte
152. ugriffsrechte des Benutzers der die Anwen dung gestartet hat Abhangig von der Funktionalitat der Anwendung kann dies zu gravierenden Sicherheitsl cken f hren M gliche Szenarien m Die Anwendung und damit auch der Client k nnen im serverseitigen Dateisystem navigieren und somit Content ansehen bzw ndern 168 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API m Die Anwendung und somit auch der Client k nnen eventuell Netz werkverbindungen zu Computern herstellen die in der serverseitigen Umgebung liegen In einer solchen Umgebung wird empfohlen dass dem oben erw hnten Benutzer nur die Rechte zugestanden werden die daf r sorgen dass die Anwendung fehlerfrei l uft Au erdem sollte der Zugriff auf andere Ressourcen besonders auf sicherheitsrelevante oder sensible Daten verboten sein JVM mit SecurityManager Durch die Java 2 Plattform steht eine berarbeitete Sicherheitsarchitektur mit fein strukturierten und leicht konfigurierbaren Sicherheitsmecha nismen zur Verf gung Um diese Funktionen nutzen zu k nnen f hren Sie die folgenden Schritte aus 1 Integrieren Sie einen SecurityManager in den Serverprozess 2 Erzeugen Sie eine Sicherheitsmechanismus Datei die der Anwen dung die Rechte bereitstellt die f r eine fehlerlose Operation notwendig sind Diese Datei kann verwendet werden um den Zugriff einer Anwendung entscheidend einzuschr nken verglichen mit den Rechten die einem Benu
153. ungen fortsetzen Hilfe abbrecnen lt zur ck weiter Abb 15 Assistent beenden Die Angaben die Sie bis jetzt gemacht haben gen gen zum Anlegen der neuen Application Sie k nnen der Application jedoch optional Reposito ries und Ressourcen zuordnen Aktivieren Sie in diesem Dialog das gew nschte Optionsfeld und best tigen Sie die Auswahl durch Klicken auf die Schaltfl che Fertig bzw Weiter 72 Livelink WCM Server Portal Manager API verwalten Repositories zuordnen In diesem Dialog k nnen Sie der Application bereits beim Anlegen Repo sitories zuordnen neue Application x Repositories Sie k nnen nun Repositories ausw hlen die Sie dieser Application lt zuordnen m chten K J Repositories O Hinzuf gen ernen rarer Abb 16 Repository beim Anlegen einer Application zuordnen Gehen Sie dazu folgenderma en vor 1 Klicken Sie auf die Schaltfl che Hinzuf gen 2 Markieren Sie in der eingeblendeten Liste die Repositories die Sie zuordnen m chten 3 Best tigen Sie die Auswahl durch Klicken auf die Schaltfl che OK Die Repositories werden in den Assistenten bernommen 4 Klicken Sie auf die Schaltfl che Weiter Portal Manager API Programmierhandbuch 73 Kapitel 3 Ressourcen zuordnen Die Ressourcen bilden die Grundlage fur die Internationalisierung in den Beans In diesem Dialog k nnen Sie den Zugriff auf Java R
154. ungen wirksam werden m ssen die Server neu gestartet werden Sie k nnen das Tracing Verhalten auch im Admin Client konfigurieren in diesem Fall ist kein Neustart der Server erforderlich Die Datei trace properties enth lt die folgenden Eintr ge Eintr ge in der Datei trace properties Eintrag output policy Bedeutung Mit diesem Eintrag wird die Art der Ausgabe festge legt Folgende Werte sind m glich Stdout Standardausgabekanal Sterr Standardfehlerkanal Process Eine Datei f r alle Ausgaben Standard Thread Eine Datei pro Thread Class Eine Datei pro Klasse Thread Class Eine Datei pro Thread und Klasse output overwrite Mit diesem Eintrag werden bestehende Protokollda teien berschrieben Wert true oder die Daten werden an bestehende Dateien angef gt Wert false output Limit Die maximale Gr e der Ausgabedatei in KB file path Der Pfad zu dem Verzeichnis in dem sich die Proto kolldateien befinden file prefix Das Prafix der Dateinamen 94 Livelink WCM Server Portal Manager API verwalten Eintrag Bedeutung file suffix Das Suffix der Dateinamen in der Regel die Dateinamenerweiterung clearer delay Die Zeit in Sekunden zwischen zwei L ufen damit die Thread Tabelle um nicht mehr laufende Threads bereinigt werden kann Bei einem Wert von 0 wird kein Bereinigungs Thread gestartet nur fur Tests in einer Produktivinstallation mu
155. ur ck Portal Manager API Programmierhandbuch 131 132 Livelink WCM Server KAPITEL 5 Hinweise zur Programmierung mit dem Portal Manager API Dieses Kapitel bietet Ihnen eine knappe Einf hrung in die Programmier schnittstellen des Portal Manager API und einige Anwendungsbeispiele 5 1 Authentifizierung und Session Management Um die Funktionalit t des Portal Manager API nutzen zu k nnen ist wegen des systemseitigen Zugriffs und Sicherheitsmechanismus eine ordnungsgem e Authentifizierung als WCM Benutzer notwendig Das f r die Kommunikation zwischen Benutzer und dem Portal Manager API verwendete HTTP Protokoll ist zustandslos Dies f hrt dazu dass f r jede HTTP Anfrage eine Authentifizierung erforderlich ist Dieser Umstand wird durch die JSP Spezifikation behoben die einen Mechanismus f r HTTP Sessions bereitstellt Eine HTTP Session zeichnet sich durch die folgenden Merkmale aus Initialisierung Eine HTTP Session wird initialisiert wenn die Verbin dung von einem Client zu einem Webserver das erste Mal hergestellt wird Portal Manager API Programmierhandbuch 133 Kapitel 5 Session ID Eine Session die sich im Kontext einer JSP Engine befindet wird durch eine fur die jeweilige Installation eindeutige Session ID identifiziert Die Session ID wird von der JSP Engine Server verwaltet HTTP Session Timeout Eine HTTP Session ist nur g ltig wenn der Client innerhalb einer bestimmten
156. uszuf hren Livelink WCM Server Klassen und Interfaces des Portal Manager API m durch Angabe des Website Namens und der Datenhaltungssicht auf die Website Edit QS Produktion Auf diese Weise kann auf die Objekte einer Website zugegriffen werden ohne Deploymentsysteme einzurichten Repositories die so konfiguriert sind k nnen keine Deployment spezifischen Objektdaten z B URL Pfad zur ckliefern Die Datenhaltungssicht die dem VipObjectHandlerRepository indirekt ber das Deploymentsystem oder direkt zugeordnet ist bestimmt welche Objekte sichtbar sind Ebenso bestimmt die Daten haltungssicht welche Aktionen ausgef hrt werden k nnen Eine detaillierte Beschreibung welche Aktionen in welcher Sicht ausgef hrt werden k nnen finden Sie in der Beschreibung der Klasse ObjectHandler im WCM Java API Programmierhandbuch F r die Benutzung der meisten Methoden des VipObjectHandlerBean ist es erforderlich dass der Benutzer ange meldet ist Der angemeldete Benutzer muss ausreichende Rechte besitzen um die Aktionen durchf hren zu k nnen Jeder Benutzer der Aktionen an WCM Objekten ausf hrt verbraucht eine Lizenz Diese Lizenz wird wieder freigegeben wenn sich der Benutzer abmeldet oder die Benutzeranmeldung im Server ung ltig wird Hinweis Ein Benutzer der schreibend auf das WCM System zugreift verbraucht eine Lizenz Diese Lizenz wird fr hestens nach einer Minute freigegeben auch wenn sich der Benutzer v
157. ut bzw die Pr sentation der Daten die aus der Formularinstanz stammen Ist keine OID im Spezialattribut generate_static hinterlegt wird nur der unver nderte Inhalt der Formu larinstanz in Form von XML Code vom Deploymentsystem erzeugt Beim Anlegen eines Deploymentsystems wird im Admin Client festgelegt wie die Referenzen in den WCM Objekten in URLs umgewandelt werden Dabei gibt es folgende Optionen Portal Manager API Programmierhandbuch 43 Kapitel 2 m absolut In den Links werden absolute Pfade verwendet Beispiel lt a href http www company example products NewProducts htm gt m relativ In den Links werden relative Pfade verwendet Beispiel lt a href NewProducts htm gt m Server relativ In den Links werden relative Referenzen ohne Proto kollangabe und Basis URL verwendet Beispiel lt a href products NewProducts htm gt Mithilfe des Spezialattributs absolute_urls k nnen Sie im Metadaten Dialog des Content Clients die Einstellung aus dem Admin Client berschreiben Deploymentsysteme die mit der Option relativ angelegt wurden berechnen Referenzen die die JSP Seite enth lt relativ zum Pfad der JSP Seite Wird die JSP Seite dann zwecks Statifizierung einer Formula rinstanz ausgef hrt gelangen die relativen URLs in den statischen Code der Formularinstanz wo sie nicht mehr angepasst werden Dies ist dann problematisch wenn sich die Formularinstanz nicht im gleichen Verzeichnis wie die f
158. verseitig ausgef hrt wird LoginRepository Repository mit dem Informationen zu Benutzer Accounts verarbeitet werden Master Server Nur Master Server haben lesenden und schreibenden Zugriff auf die Daten eines WCM Systems Der Master Content Server verwaltet die Website Daten der Master Administrationsserver die Konfigurations und Systemdaten des WCM Systems Siehe auch Serverkategorie Portal Manager API Programmierhandbuch 193 Glossar ObjectHandler Diese Instanz nimmt Aktionen an und manipuliert so die Objekte der Website Personalisierung Dynamisierung der Website die auf den aktuellen Besucher individuell zugeschnitten ist Portal Als Portal wird eine Website bezeichnet die dem Benutzer als zentraler Einstieg als Tor in bestimmte Internetangebote dient Ein Portal bietet oftmals themenbezogene personalisierte Angebote und Informationen Properties Datei Datei mit Ressourcen Informationen die in einem definierten Format Schl ssel Wert Paare vorliegen Proxy Server Ein Proxy Server dient dazu Anforderungen von einer Client Anwendung etwa einem Browser an einen anderen oder mehrere andere Server abzufangen Wenn der Proxy Server die Anforderung erf llen kann sendet er die angeforderten Daten an die Client Anwendung zur ck Andernfalls leitet er die Anforderung an den spezifizierten Server weiter Im Kontext von Livelink WCM Server haben WCM Server der Kategorie Proxy
159. walten 3 2 Applications verwalten Allgemeine Informationen zu Applications erhalten Sie im Abschnitt Applications auf Seite 116 Wenn Sie das Element Applications ffnen werden Ihnen alle verf g baren Applications angezeigt sowohl im Baum links als auch in einer Liste im rechten Fensterbereich A Konfiguration Pools F Eigene Verbindungstypen 8 Server x Websites amp Deploymentsysteme 5 Server Agenten B Dienstprogramme Repositories es Applications 9 E ClickStreamApplication VipDAVApplication VipHCLApplication VIPHTMLClientApplication VipObjectApplication E VipUserApplication E E WebServiceApplication amp HE ge De Abb 13 bersicht ber die verf gbaren Applications Die hier angezeigten Applications CLickStreamApplication VipDAVApplication VipHCLApplication VIPHTMLClientApplication VipObjectApplication VipUserApplication und WebServiceApplication werden w hrend der Installation des WCM Systems angelegt Diese Applications geh ren zum Lieferumfang des Portal Manager API und sollten nicht ver ndert oder gel scht werden Sie k nnen hier jedoch beliebige eigene Applica tions hinzuf gen und bearbeiten Folgende Funktionen stehen f r Applications zur Verf gung neue Application einrichten siehe folgenden Abschnitt Portal Manager API Programmierhandbuch 69 Kapitel 3 Applications ber Parameter konfigurieren siehe Abschnitt Par
160. werden Soll eine bestehende Formularinstanz ge ndert werden wird sie von der bersichtsseite aus in das nderungsformular geladen Der Benutzer ndert die Daten und schickt erneut das Formular ab Abweichend zum Anlegen von Formularinstanzen wird der Formularinhalt jetzt an die JSP Seite zum ndern gegeben Diese extrahiert die Formulardaten und aktu alisiert damit Metadaten und Content der zu ndernden Formularinstanz Die brigen Aktionen die von der bersichtsseite aus durchf hrbar sind sind weniger spektakul r Es wird lediglich der entsprechende ObjectHandler f r die Formularinstanz aufgerufen und die bersichts seite aktualisiert 5 3 Framework f r Applications In diesem Abschnitt wird das Framework beschrieben das f r die Reali sierung von benutzerspezifischen Applications verwendet wird Das Portal Manager API stellt ein Reihe von Java Klassen zur Verf gung mit denen benutzerspezifische Applications in das Portal Manager API integriert werden k nnen Das Zusammenspiel der Klassen wird im folgenden Klassendiagramm abgebildet 160 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Das Interface Session verbindet die Klasse SessionBase mit einer HTTP Session die von der JSP Engine erstellt wird interface Session from core interface interface Application sy Repository from application from respository Die Methode setLocale Locale locale stellt Sprachand
161. y Account Informationen im Admin Client VipUserRepository der Administrationsserver kann dazu auch auf den LDAP Server zugreifen Jedes Login Repository benutzt als Schlussel die Benutzernamen Als Datenwerte dienen alle Account Informationen zu den jeweiligen Benut zern Diese sind in einem RepositoryEntry abgelegt In dieser Eigen schaft gleichen Login Repositories den normalen Repositories Nach erfolgreicher Authentifizierung eines Benutzers wird sein Passwort gespeichert Damit k nnen andere Repositories das Passwort noch einmal verwenden ohne dass es vom Benutzer erneut eingeben werden muss Single Sign On Unterst tzung 112 Livelink WCM Server Klassen und Interfaces des Portal Manager API Klassenhierarchie Ein Repository wird durch das Interface Repository dargestellt Das Interface Repository beinhaltet im Wesentlichen Zugriffsmethoden die eine Implementierung mittels einer Reposi toryMap nahelegen jedoch nicht erzwingen Einige der Implementationen des Interface Repository speichern die Repository Daten tatsachlich als RepositoryMap andere leiten die Methodenaufrufe an die dahinter stehende externe Datenquelle weiter Das Interface Repository wird von der abstrakten Basisklasse RepositoryImpl implementiert Diese Klasse ist Grundlage f r alle mit dem Portal Manager API ausgelieferten Repository Implementationen Die Klasse RepositoryImpl Vollst ndiger Name de gauss vip portalmanager repository Re
162. y auf Seite 91 Eine Beschreibung der einzelnen Parameter finden Sie in Tabelle 3 Repositories und ihre Parameter auf Seite 60 Hinweise sind nicht identisch sss ssc Die Werte der Idapattr Parameter m ssen gegebenenfalls an die Konfiguration des LDAP Verzeichnisdienstes angepasst werden Es m ssen nur Mappings f r die Parameter vorgenommen werden bei denen sich die Werte von pomaattr und ldapattr Parameter unterscheiden Dabei wird zwischen Gro und Kleinschreibung unterschieden d h die Werte userpassword und userPassword Tabelle 6 Beispielkonfiguration eines DirectoryRepository Parameter Wert url Idap Idapserver company example 389 authentication simple principal LDAP Benutzer mit dem Recht Eintr ge hinzuzuf gen credentials Passwort des unter principal eingetra genen Benutzers principal changes LDAP Benutzer mit dem Recht Eintr ge zu ndern und zu l schen Hinweis Diese Parameter wird dazu verwendet Benutzer zu Gruppen und Rollen zuzuordnen Dies gilt auch f r den Fall dass der angemeldete Benutzer nicht das Recht hat LDAP Eintr ge zu ndern und zu l schen 142 Livelink WCM Server Hinweise zur Programmierung mit dem Portal Manager API Parameter Wert credentials changes Passwort des unter principal changes eingetragenen Benutzers search scope SUBTREE_SCOPE
163. zieren mehrerer 36 Content Server in Application Server starten 31 D Datenwerte Values 103 DirectoryRepository Klasse 91 Dynamische Navigationselemente 150 Dynamischer Content 33 F Fehlersuche 94 Filterung 105 FormData Klasse 37 Formulare Anlegen eines Objekts 38 Umgang mit 37 Framework Applications 160 Portal Manager API Programmierhandbuch 197 Index G generate_static Spezialattribut 40 Grundlegende Klassen 102 Basisdatentypen 102 Filterung und Sortierung 105 Repositories 111 RepositoryMap 107 H HTML Formular 158 I Implementieren Applications 162 Integration externe Anwendungen 48 in das WCM System 24 Interfaces Application 117 ContentHandler 131 RepositoryEntrylterator 109 Repositorylterator 110 Value 103 VipProfile 123 Internationalisierung 170 Architektur des Portal Manager API 171 Portal Manager API Anwendung 172 WCM Internationalisierungsobjekt 175 Internationalization Klasse 122 J Javadoc 101 Java Server Page siehe JSP Seite JSP Seite Gestaltung 166 Modell 1 Architektur 166 198 Modell 2 Architektur 166 JSP Skript 20 JVM mit SecurityManager 169 ohne SecurityManager 168 K Klassen Applicationimpl 118 Base 115 FormData 37 Internationalization 122 RepositoryEntry 108 Repositorylmpl 113 RepositoryMap 109 SessionApplication 121 SessionBean 123 VipObjectBean 126 VipObjectFilterBean 130 VipObjectHandlerBean 46 128 VipUserBean 126 VipWhatsNewBean 130 Kla
164. znehmer und der Open Text Corporation geschlossen wurde Kontaktadresse Unternehmenshauptsitz Open Text Corporation 185 Columbia Street West Waterloo Ontario N2L 5Z5 Kanada Telefon 1 519 888 7111 Wenn Sie Abonnent des Software Maintenance Program sind oder weitere Informationen zu anderen Kundendienstprogrammen w nschen wenden Sie sich an den Kundendienst von Open Text unter http www opentext com services support html Wenn Sie zu dieser Ver ffentlichung Vorschl ge machen m chten senden Sie eine E Mail Nachricht an documentation opentext com Weitere Informationen zu den Produkten und Dienstleistungen von Open Text finden Sie auf unserer Homepage unter http www opentext com 2005 IXOS SOFTWARE AG Bretonischer Ring 12 85630 Grasbrunn Deutschland Tel 49 89 4629 0 Fax 49 89 4629 1199 E Mail lt office ixos de gt Internet http www ixos de Alle Rechte vorbehalten Einschlie lich solche die die Reproduktion das Kopieren oder eine andere Verwendung oder bermittlung der Inhalte dieses Dokumentes oder Teile davon betreffen Kein Teil dieser Publikation darf egal in welcher Form ohne die schriftliche Zustimmung der IXOS SOFTWARE AG reproduziert an Dritte bermittelt unter Einsatz elektronischer Retrieval Systeme verarbeitet kopiert verteilt oder f r ffentliche Vorf hrungen verwendet werden IXOS beh lt sich das Recht vor Aktualisierungen und nderungen der Inhalte v

Download Pdf Manuals

image

Related Search

Related Contents

Philips MCM108D Micro Hi-Fi System  Votre Avocat vous informe - Conseil national des barreaux  Mars 2015 - Université Toulouse III  Exacompta 51762E ring binder  ※施工上の注意とご使用上の注意はカタログー取扱説明書をお読み    Proiettore Dati/Video iLV200/iLC200 IBM: Guida per l™utente  3Com 3CXFE575CT (90332542) Network Adapter  ESIE07-09 BMS multi scroll DRAFT tcm135    

Copyright © All rights reserved.
Failed to retrieve file