jRQL- Management Server Aufgaben elegant automatisieren

46
jRQL - WSMS Aufgaben elegant automatisieren Frank Leja

description

Stellt die 12 freien Plug-ins für Administratoren vor, das jRQL API selbst und wie jRQL bei Hapag-Lloyd genutzt wird.

Transcript of jRQL- Management Server Aufgaben elegant automatisieren

Page 1: jRQL- Management Server Aufgaben elegant automatisieren

jRQL - WSMS Aufgaben elegant automatisieren Frank Leja

Page 2: jRQL- Management Server Aufgaben elegant automatisieren

1. Einführung

2. 12 Plug-ins für Admins

3. jRQL API

4. jRQL bei Hapag-Lloyd

Page 3: jRQL- Management Server Aufgaben elegant automatisieren

3

Einführung - Wer bin ich?

• Frank Leja

• 2002 Start bei Hapag-Lloyd als Webentwickler

• 2003 CMS Admin

• 2004 Beginn jRQL Entwicklung

• erstellte Projekte

1. Intranet HIP

2. Webseite www.hlag.com

• Motivation jRQL:

• Autorenaufgaben automatisieren

• Administratoraufgaben automatisieren

• jRQL permanent erweitert

Page 4: jRQL- Management Server Aufgaben elegant automatisieren

4

Einführung - Nehmen und Geben

Nehmen• viel von der Gemeinschaft profitiert:

• www.reddotusergroup.org

• www.reddotcmsblog.com

• Tipps für CMS und RQL

• Plug-ins

GebenHapag-Lloyd spendet

• 12 Plug-ins für Administratoren

• und zugrundeliegendes Java API jRQL

Page 5: jRQL- Management Server Aufgaben elegant automatisieren

5

Einführung – Gliederung

Teil 1: 12 Plug-ins für Admins• für alle WSMS Administratoren

• keine Java Kenntnisse notwendig!

• basieren auf jRQL

Teil 2: Java API jRQL• Nutzung benötigt Java Kenntnisse

• mit Dokumentation

• ohne Quelltext

Teil 3: jRQL bei Hapag-LloydBeispiele

• wie Hapag-Lloyd von jRQL profitiert

• was mit jRQL möglich ist

Page 6: jRQL- Management Server Aufgaben elegant automatisieren

1. Einführung

2. 12 Plug-ins für Admins

3. jRQL API

4. jRQL bei Hapag-Lloyd

Page 7: jRQL- Management Server Aufgaben elegant automatisieren

7

12 Plugins für Admins – Überblick 1/2

Die 12 Plug-ins• beantworten Fragen meiner täglichen Arbeit

• stellen spezielle Aspekte dar

WSMS bot keine adäquaten Dialoge

hier Auszug aus Unofficial RedDot CMS blog

http://www.reddotcmsblog.com/12-java-plugins-using-rql-api/

Page 8: jRQL- Management Server Aufgaben elegant automatisieren

8

12 Plugins für Admins – Überblick 2/2

Bereich Name

Content classes 1. Find template elements

Content class 2. Show elements usage

Content class 3. Show language variant dependency

Content class 4. Preassignment reference

Content classes Show content class GUIDs

Berechtigung 5. Show users of group

Berechtigung Collect mail adresses

Publizierung Cancel waiting jobs

Publizierung Delete job reports

Seiten Show child details

Seiten Reset draft pages

Seite Show page by GUID

Page 9: jRQL- Management Server Aufgaben elegant automatisieren

9

Content classes - Find template elements 1/5

FrageIn welchen content classes ist ein bestimmtes Element vorhanden?

Eingabe

• Elementtyp

• Name (mit Wildcard)

AntwortAnzeige aller passenden Elemente aus allen content classes.

Page 10: jRQL- Management Server Aufgaben elegant automatisieren

10

Content classes - Find template elements 1/5

Page 11: jRQL- Management Server Aufgaben elegant automatisieren

11

Content class - Show elements usage 2/5

FrageWelche Elemente einer content class kann ich löschen, sind unbenutzt?

Eingabe AntwortAnzeige welche Elemente in welchen Templates benutzt werden.

Page 12: jRQL- Management Server Aufgaben elegant automatisieren

12

Content class - Show elements usage 2/5

Templates

Ele

me

nte

Page 13: jRQL- Management Server Aufgaben elegant automatisieren

13

Content class - Show language variant dependency 3/5

FrageKommen die Seiten einer content class in den Übersetzungsworkflow?

Eingabe AntwortZeigt für alle Elemente an, ob es sprachvariantenabhängig oder –unabhängig konfiguriert ist.

Page 14: jRQL- Management Server Aufgaben elegant automatisieren

14

Content class – Show language variant dependency 3/5

… änderbar = OK

… nicht änderbar = falsch?

sprachvarianten-abhängig und …

Page 15: jRQL- Management Server Aufgaben elegant automatisieren

15

Content class - Preassignment reference 4/5

FrageAn welchen MultiLink-Templateelementen ist eine content class vorbelegt?

Eingabe

• alle Folder oder

• ein bestimmter Folder

AntwortZeigt alle Templateelemente aller content classes an, an denen die ausgewählte content class vorbelegt ist.

Page 16: jRQL- Management Server Aufgaben elegant automatisieren

16

Content class - Preassignment reference 4/5

Page 17: jRQL- Management Server Aufgaben elegant automatisieren

17

Berechtigung - Show users of group 5/5

FrageKann ich direkt im SmartTree ermitteln, ob ein Benutzer an einer Seite berechtigt ist?

Eingabe AntwortZeigt im SmartTree alle Benutzer einer Benutzergruppe direkt an.

Page 18: jRQL- Management Server Aufgaben elegant automatisieren

18

Berechtigung - Show users of group 5/5

spart Wechsel in den ServerManager

Page 19: jRQL- Management Server Aufgaben elegant automatisieren

19

12 Plugins für Admins - Ausblick

weitere InformationenUnofficial RedDot CMS blog

http://www.reddotcmsblog.com/12-java-plugins-using-rql-api/

• Beschreibung aller Plug-ins

• download inklusive Applikationsserver

• Installationsanleitung

Kein Java Know-how notwendig!

Page 20: jRQL- Management Server Aufgaben elegant automatisieren

1. Einführung

2. 12 Plug-ins für Admins

3. jRQL API

4. jRQL bei Hapag-Lloyd

Page 21: jRQL- Management Server Aufgaben elegant automatisieren

21

Was ist jRQL?

• Basis aller Plug-ins

• Application Programming Interface (API)

• objektorientiert

• Java 5

• im Kern ~ 100 Klassen

• zusätzlich ~ 45 Hilfsklassen

• kapselt ~ 160 RQL Kommandos

• auch undokumentierte

• getestet in CMS 7.5 und MS 9

siehe jRQL Blog

http://jrql.wordpress.com/

jRQL

flexibel

bewährt

umfassend

robust

Page 22: jRQL- Management Server Aufgaben elegant automatisieren

22

Wie funktioniert jRQL?

Management Server

RQ

L

RQ

L

RQ

L

Plug-in Plug-in Batchprogramm

jRQL

Page 23: jRQL- Management Server Aufgaben elegant automatisieren

23

Vorteile der zusätzlichen Schicht

Objektorientiert• trennt das Was vom Wie

• RQL XML Verarbeitung versteckt

• übersichtlich und elegant

Kapselung• 1 RQL Kommando = 1 Implementierung

• Objekte speichern RQL Ergebnisse

• jedes jRQL Objekt kann RQL Kommandos starten

• geringe Releaseabhängigkeit

• high-level-API

• nachträgliche Verbesserung möglich

Wiederverwendung• beschleunigt Neuentwicklung

• reduziert Testaufwand

Page 24: jRQL- Management Server Aufgaben elegant automatisieren

24

Was kann jRQL? - Übersicht

Anmelde

n

Autoren

SmartTree

ServerManagerjRQL

Page 25: jRQL- Management Server Aufgaben elegant automatisieren

25

Was kann jRQL? – Bereich 1 - Anmelden 1/2

Plug-in

vorhandene Sitzungsdaten

Mitbenutzung

Mitbenutzung

BatchLogin mit Name und Passwort

eigene

eigene

Berechtigung

Aufgaben (Tasks)

jRQL Anmeldung

Page 26: jRQL- Management Server Aufgaben elegant automatisieren

26

Was kann jRQL? – Bereich 1 - Anmelden 2/2

MS 1

Batchprogram 2Batchprogramm 1

jRQL

MS 2

Projekt 1 Projekt 2 Projekt 3 Projekt A Projekt B

gleichzeitiger Zugriff auf

• beliebig viele Projekte und

• beliebig viele WSMS

Page 27: jRQL- Management Server Aufgaben elegant automatisieren

27

Was kann jRQL? – Bereich 2 - Autoren

Inhaltselemente bearbeiten

• Standardfelder• Text• Image• Media• inklusive Vorgabewerte

Liste und Container

• Seite(n)• erstellen• abhängen• verschieben• verknüpfen

• …

Seite

• Publizierung starten• Workflow

• Status anzeigen• Aktionen auslösen

• …

vollständige Liste aller Funktionen (JavaDoc) auf http://jrql.110mb.com/

Page 28: jRQL- Management Server Aufgaben elegant automatisieren

28

Was kann jRQL? – Bereich 3 - SmartTree

Content class bearbeiten

• Plug-ins zuweisen• Elemente löschen• Festes Stylesheet setzen• Standardfeld Text erstellen• MultiLinks referenzieren, inklusive aller Seiten• …

Publizierung

• Exportpakete aufbauen• Jobs und Reports verwalten• …

vollständige Liste aller Funktionen (JavaDoc) auf http://jrql.110mb.com/

Page 29: jRQL- Management Server Aufgaben elegant automatisieren

29

Was kann jRQL? – Bereich 4 - ServerManager

Projekte

• sperren• freigeben• Export starten• …

Plug-in

• aktivieren• deaktivieren• an content class zuweisen• …

Benutzer und Gruppen

• Eigenschaften lesen• Benutzer einer Gruppe

hinzufügen• Benutzer abmelden• …

vollständige Liste aller Funktionen (JavaDoc) auf http://jrql.110mb.com/

Page 30: jRQL- Management Server Aufgaben elegant automatisieren

1. Einführung

2. 12 Plug-ins für Admins

3. jRQL API

4. jRQL bei Hapag-Lloyd

Page 31: jRQL- Management Server Aufgaben elegant automatisieren

31

jRQL bei Hapag-Lloyd – Überblick

• Massenupdates• Export und Import• Content classes bearbeiten

Administration

• 14 aktive• 5 Imports• 4 Statistiken• 2 housekeeping

Batchprogramme

• 64 aktive• Täglich > 260 Aufrufe• Standarddialoge ersetzt

Plug-ins

Beispiele

1. Relaunch hlag.com

2. HIP Seitenstatistik

3. Eigene Statistik

4. Edit linking

5. Submit with blocks

6. Publish page

Page 32: jRQL- Management Server Aufgaben elegant automatisieren

32

jRQL bei Hapag-Lloyd – Administration - Relaunch hlag.com 1/2

Anforderung Publizierungskonfiguration • 30 Projektvarianten (5 Templates x 6 Umgebungen)

• 4 Sprachvarianten

• 20 Exportpakete

jRQL kann:• Publizierungsstruktur erstellen und navigieren

• im Publizierungspaket neue SV / PV Kombination hinzufügen

• an Kombination

• Publizierungsziele bearbeiten

• Ordner in publizierte Seiten setzen

Vorteile• hat viel Zeit gespart

• keine Flüchtigkeitsfehler

Page 33: jRQL- Management Server Aufgaben elegant automatisieren

33

jRQL bei Hapag-Lloyd – Administration - Relaunch hlag.com 2/2

Anforderung Massendaten migrieren, z.B.• 220 Pressemitteilungen

• 300 Büroseiten mit 2300 Kontaktzeilenseiten

Altes Projektzu Seite navigieren

Daten lesen

Neues ProjektSeite erstellen

Daten schreiben

1. kopieren on-the-fly

2. Export, Korrektur und ImportAltes Projektzu Seite navigieren

Daten lesen

Neues ProjektSeite erstellen

Daten schreiben

Altes Projekt Neues ProjektDateinamen setzen

DateisystemAssets importieren

3. Assets migrieren

Download

Page 34: jRQL- Management Server Aufgaben elegant automatisieren

35

jRQL bei Hapag-Lloyd – Batchprogramme

• Massenupdates• Export und Import• Content classes bearbeiten

Administration

• 14 aktive• 5 Imports• 4 Statistiken• 2 housekeeping

Batchprogramme

• 64 aktive• Täglich > 260 Aufrufe• Standarddialoge ersetzt

Plug-ins

Beispiele

1. Relaunch hlag.com

2. HIP Seitenstatistik

3. Eigene Statistik

4. Edit linking

5. Submit with blocks

6. Publish page

Page 35: jRQL- Management Server Aufgaben elegant automatisieren

36

jRQL bei Hapag-Lloyd – Batchprogramme - HIP Seitenstatistik 1/2

FrageWelche Benutzer haben in der letzten Woche welche Seiten erstellt oder geändert?

Eingabe• Benutzername und Passwort

• Startseite

Antwort• sammelt alle physischen Seiten unter Startseite

• ermittelt Details physischer Seiten

• erstellt eine Excel-Datei

Page 36: jRQL- Management Server Aufgaben elegant automatisieren

37

jRQL bei Hapag-Lloyd – Batchprogramme - HIP Seitenstatistik 2/2

Seiten ID

Überschrift

Content class

Erstellung

Änderung

Publizierter Dateiname

Berechtigung

Page 37: jRQL- Management Server Aufgaben elegant automatisieren

38

jRQL bei Ihnen – Batchprogramme - Eigene Statistik

jRQL sammelt physische Seiten• fertige Komponente mitgeliefert

• Beispielprogramm im jRQL download enthalten

Vorbedingungen• alle content classes markieren, die physische Seiten definieren

• implementieren, was für eine physische Seite getan werden soll

Anleitung im jRQL Bloghttp://jrql.wordpress.com/2009/12/15/do-something-for-all-physical-pages-in-a-project/

Page 38: jRQL- Management Server Aufgaben elegant automatisieren

39

jRQL bei Hapag-Lloyd – Plug-ins

• Massenupdates• Export und Import• Content classes bearbeiten

Administration

• 14 aktive• 5 Imports• 4 Statistiken• 2 housekeeping

Batchprogramme

• 64 aktive• Täglich > 260 Aufrufe• Standarddialoge ersetzt

Plug-ins

Beispiele

1. Relaunch hlag.com

2. HIP Seitenstatistik

3. Eigene Statistik

4. Edit linking

5. Submit with blocks

6. Publish page

Page 39: jRQL- Management Server Aufgaben elegant automatisieren

40

jRQL bei Hapag-Lloyd – 1. Plug-in - Edit linking 1/2

FragenAn welchen MultiLinks ist eine Seite verknüpft?

Eingabe AntwortAnzeige aller MultiLinks, an denen die geöffnete Seite verknüpft ist.

• Verknüpfung lösen

• Hauptlink wählen

Page 40: jRQL- Management Server Aufgaben elegant automatisieren

41

jRQL bei Hapag-Lloyd – 1. Plug-in - Edit linking 2/2

MultiLink

Seite des MultiLinks

bearbeiten

Page 41: jRQL- Management Server Aufgaben elegant automatisieren

42

jRQL bei Hapag-Lloyd – 2. Plug-in - Submit with blocks 1/2

FrageWie findet ein Autor alle Blockseiten zu einer physischen Seite, wenn er alle in einem Schritt bestätigen möchte?

Eingabe AntwortErmittlung der Struktur der physischen Seite und Bestätigung aller Blockseiten im Entwurf mit einem Klick.

Page 42: jRQL- Management Server Aufgaben elegant automatisieren

43

jRQL bei Hapag-Lloyd – 2. Plug-in - Submit with blocks 2/2

Struktur der physischen Seite

gewählte Seiten bestätigen

Page 43: jRQL- Management Server Aufgaben elegant automatisieren

44

jRQL bei Hapag-Lloyd – 3. Plug-in - Publish page 1/2

Frage Welche Projekt- und Sprachvarianten muss ein Benutzer wählen, wenn er eine Seite publizieren möchte?

Eingabe AntwortAutor wählt für geöffnete Seite nur noch Umgebung, das Plug-in entscheidet nach content class.

Page 44: jRQL- Management Server Aufgaben elegant automatisieren

45

jRQL bei Hapag-Lloyd – 3. Plug-in - Publish page 2/2

Vorbelegung steuerbar

berücksichtigt Berechtigung des Autors

Startet Publizierung

Page 45: jRQL- Management Server Aufgaben elegant automatisieren

46

jRQL – Einschränkungen

• jRQL ist nicht vollständig

• subjektive Auswahl

• keine Gewähr

• kein Quelltext

• Grundfunktionen nur in CMS 7.5 und MS 9 getestet

• nicht mehr alle Funktionen verwendet

• verwendete Serversprache: Englisch

Page 46: jRQL- Management Server Aufgaben elegant automatisieren

47

jRQL – Weitere Informationen

jRQL Blog

http://jrql.wordpress.com/

• Tutorial mit getting started

• download als Eclipse-Projekt

• Installationsanleitung

vollständige Dokumentation aller Funktionen (JavaDoc)

http://jrql.110mb.com/