35
41. DNUG Konferenz · 11./12. November 2014 · Leipzig www.dnug.de „Don‘t reinvent the wheel“ Anwendungen modernisieren mit Tools von OpenNTF Oliver Busse ULC Business Solutions GmbH / GABO mbH & Co KG Dev-Track, „Notfall“-Session

Dnug 112014 modernization_openn_ntf_ersatzsession

Embed Size (px)

Citation preview

Page 1: Dnug 112014 modernization_openn_ntf_ersatzsession

41. DNUG Konferenz · 11./12. November 2014 · Leipzig

www.dnug.de

„Don‘t reinvent the wheel“

Anwendungen modernisieren mit Tools

von OpenNTF

Oliver Busse

ULC Business Solutions GmbH / GABO mbH & Co KG

Dev-Track, „Notfall“-Session

Page 2: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Referenteninfos

• IBM Collaborative Solutions Architect beiULC Business Solutions /GABO mbH & Co. KG

• IBM/Lotus Notes seit 2000

• Schwerpunkte– Domino (Web) Development

– XPages, Java, HTML(5), CSS(3), Javascript

• Community-Addict– OpenNTF Contributor Director

– Kurator bei CollaborationToday.info

@zeromancer1972www.oliverbusse.com

Page 3: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Agenda

• Warum Erweiterungen?

• Vorstellung ausgewählter Plugins

• Installation auf Domino und Domino Designer

Page 4: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Warum Erweiterungen?

Page 5: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Warum Erweiterungen?

• Vereinfachung im Entwicklungsprozess

• Unterstützung durch Debugging-Tools

• Modernisierung mit wenigen Handgriffen

• Wiederverwendbarkeit von Komponenten

Page 6: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Vorstellung Plugins

Page 7: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Welche Plugins?

• OpenNTF Extension Library („Extlib“)

• OpenNTF Domino API („ODA“)

• Bootstrap 4 XPages

• weitere– POI 4 XPages

– Debug Toolbar

– uvm.

Page 8: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library

Page 9: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library

• Sehr aktueller und weiterentwickelter Stand gegenüber der mit Domino 9.0.x ausgelieferten Version (901v00_09.20140903-1400)

• Toolbox voll mit praktischen Controls– OneUI Application Layout, Dialog, Dynamic Content

– Form Table, Form Row, Form Column

– uvm.

• Mobile Single Page Application Wizard

• Relational Extensions (@JDBC-Formeln)

Page 10: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library: OneUI Core Controls

OneUI AppLayout, Dialog, DataView, Navigator, Form Table & Table Rows

Page 11: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library: Mobile Single Page Application Wizard (1)

Page 12: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library: Mobile Single Page Application Wizard (2)

Page 13: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library: Relational Extensions (1)

JDBC Driver Plugin Wizard

Generiert aus JDBC Driver ein OSGi-Plugin!

Page 14: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Extension Library: Relational Extensions (2)

Page 15: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Domino API

Page 16: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Domino API (1)

Page 17: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Domino API (2)

• Wrapper API für Domino Objekte in Java

• Kein Recyling mehr für Domino Objekte!

• Vereinfachter Zugriff auf– Dokumente (als Map)

– Felder (Werte als Map)

– Datumswerte (Typecast z.B. nach java.util.Date)

• Methoden und Erweiterungen, die wir schon immer vermisst haben

• Hilfsklassen en gros

Page 18: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Domino API (3)

Page 19: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

OpenNTF Domino API (2)

public void doDocLoop(){DocumentCollection dc =

XSPUtil.getCurrenDatabase().getAllDocuments();for (Document doc : dc) {

doc.replaceItemValue(„modified", new Date());doc.save();// no recycle!

}}

Page 20: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Bootstrap 4 XPages

Page 21: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Bootstrap 4 XPages (1)

• Das beliebte CSS/JS Framework als OSGI-Plugin inkl. jQuery

• Ersatz für OneUI, alle Komponenten aus der Extlib angepasst and Look & Feel

• Responsive Design (Anwendung reagiert automatisch auf unterschiedliche Auflösungen)

• Vorteil gegenüber manueller Einbindung: Resource Aggregation funktioniert!

Page 22: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Bootstrap 4 XPages (2)

OneUI v2.1

Bootstrap Desktop Mode

Bootstrap Mobile Mode

Page 23: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino / DDE

Page 24: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Server (1)

• Anlegen einer Updatesite-Datenbank

– unbedingt das OpenNTF-Template benutzen!

– /updatesiteDomino.nsf

• Mit Admin/Server ID signieren

• notes.ini vom Server erweitern

– OSGI_HTTP_DYNAMIC_BUNDLES=updatesiteDomino.nsf

Page 25: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Server (2)

• Dateien (Plugin-Projekte) von OpenNTF laden und entpacken

• Updatesite-Ordner entpacken

– site.xml

• „Import local update site“ wählen und site.xml suchen

• „Sign all content“ ausführen

Page 26: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Server (3)

Page 27: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Server (4)

• restart task http

HTTP JVM: CLFAD0330I: NSF Based plugins are being installed in the OSGi runtime. For more information please consult the log

Page 28: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Designer (1)

• Anlegen einer zweiten Updatesite-Datenbank

– /updatesiteDesigner.nsf

• Schritte wie bei der Domino-Installation wiederholen (kein Server-Neustart erforderlich)

• In Notes/Designer „Datei, Anwendungen, Installieren“ wählen

Page 29: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Designer (2)

Page 30: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Designer (3)

• Remote Updatesite hinzufügen

– URL zum Domino mit Updatesite, z.B.http://myDomino.local/updatesiteDesigner.nsf

• Plugins auswählen und Anweisungen folgen

– Lizenzbedingungen akzeptieren

– Plugin-Installation(en) bestätigen

• Abschließend Notes/Designer neustarten lassen

Page 31: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Designer (4)

Page 32: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Installation Domino Designer (5)

Page 33: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Q&A

Fragen?

Page 34: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Bitte nehmen Sie sich die Zeit,

um diesen Vortrag zu bewerten

(A6-Block in Ihren Konferenzunterlagen)

Rückgabe

Geben Sie das ausgefüllte Bewertungsblatt

bei dem Moderator/Betreuer Ihres Vortrages

bzw. am Tagungscounter der DNUG ab.

Verlosung

Unter allen Teilnehmern

wird ein iPod nano verlost.

Page 35: Dnug 112014 modernization_openn_ntf_ersatzsession

www.dnug.de

Quellen

http://www.ulc.de

http://www.gabo.de

http://openntf.org

http://bootstrap4xpages.com

http://www.postgresql.org

http://www.pgadmin.org