Dnug35 ak-dev.071111-beyond

Post on 28-Nov-2014

1.270 views 0 download

description

Wer sich mit XPages-Entwicklung beschäftigt, wird über Kurz oder Lang auch auf OpenNTF und die eXtension Library stoßen.Was ist die eXtension Library und wie kann ich die Erweiterungen in meiner Entwicklungsumgebung nutzen?Wie können mir die zahlreichen Custom Controls auf OpenNTF helfen, den Entwicklungsaufwand zu reduzieren?Seit Juli 2011 gibt es die Möglichkeit, aus XPages heraus auf relationale Datenbanken zuzugreifen. Was wird dazu benötigt und wie sieht der Zugriff in der Praxis aus?Zielgruppe: Teilnehmer mit Grundlagenkenntnissen in der XPages-EntwicklungKenntnisse: Grundlagenkenntnisse in der XPages-Entwicklung

Transcript of Dnug35 ak-dev.071111-beyond

DNUG Konferenz: Wie werden wir morgen arbeiten? Social Business becomes real.

Wie werden wir morgen arbeiten? XPages – Beyond the Basics

7. bis 9. November 2011 Welcome Kongresshotel Bamberg

Ulrich Krause, is@web, industrial services AG

35. DNUG Konferenz 35. DNUG Konferenz

Mit freundlicher Unterstützung von:

DNUG Konferenz: Wie werden wir morgen arbeiten?

Lotus Notes / Domino Administrator & Entwickler seit 1993 Business Application Developer

bei is@web, Niederlassung Ratingen OpenNTF http://openntf.org

• !!HELP!!, Cebulon, Trigger Happy• diverse XPages Custom Controls

IBM Champion 2011• https://www-304.ibm.com/connections/blogs/socialbusiness/entry/

announcing_the_2011_ibm_champions_for_collaboration_solutions4?lang=de

Blog http://www.eknori.de Notes Forum (http://www.atnotes.de)

About: Ulrich Krause

DNUG Konferenz: Wie werden wir morgen arbeiten?

Themes XPages Extension Library XPages Relational Database Support OpenNTF Custom Controls Verschiedenes

Agenda

DNUG Konferenz: Wie werden wir morgen arbeiten?

Designelement (Resources \ Themes) seit Domino 8.5

XML file ;root element “theme” Global (Server), Lokal (.nsf) Server default themes Runtime Modifications JavaScript / CSS Attribute einer Komponente

können beeinflußt werden WebStandard, Notes, OneUI

• [domino root]/xsp/nsf/themes/

Themes

DNUG Konferenz: Wie werden wir morgen arbeiten?

Themes sind „Server Side CSS“ Werden während der JSF render phase eingefügt Beinahe jede Eigenschaft kann gesetzt werden, solange sie

nicht readonly ist Themes werden gecached

Themes

view.setStyleClass(view.getStyleClass() + “ xspView tundra”);

DNUG Konferenz: Wie werden wir morgen arbeiten?

Beispiel: pageTitle und PageIcon ( favicon )

Themes

DNUG Konferenz: Wie werden wir morgen arbeiten?

Beispiel: pageTitle und PageIcon ( favicon ) mit Themes

Themes

DNUG Konferenz: Wie werden wir morgen arbeiten?

Demo

DNUG Konferenz: Wie werden wir morgen arbeiten?

Von IBM und Mitgliedern aus der Community entwickelte Erweiterungen für Xpages

OpenNTF• Unterschiedliche Versionen für 8.5.2 / 8.5.3• http://extlib.openntf.org• Dort auch einige Videos

Installation auf Client und Server Drag & Drop Umfangreiche Demo Datenbank

Extension Library

DNUG Konferenz: Wie werden wir morgen arbeiten?

Dokumentation lesen!

Preview in WebBrowser• workspace nach domino\workspace kopieren

Extension Library Installation

DNUG Konferenz: Wie werden wir morgen arbeiten?

Dokumentation lesen! updateSite.zip entpacken features, plugins auf Server kopieren http task neu starten ( stop / start )

Extension Library Installation (Server)

DNUG Konferenz: Wie werden wir morgen arbeiten?

Download entpacken "updateSiteOpenNTF-designer.zip„ entpacken Eine neue Datenbank UpdateSite.nsf auf dem Server

erstellen (Eclipse Update Site Template) ACL anpassen, Anonymous benötigt Lesezugriff. Datenbank öffnen "Import Local Update Site„ klicken OSGI_HTTP_DYNAMIC_BUNDLES=dbname.nsf

HTTP Task stoppen / starten

Extension Library Installation – ab 8.5.3

DNUG Konferenz: Wie werden wir morgen arbeiten?

Erscheint 04 / 2012• Declan Scolia-Lynch• Paul Hannan• Jeremy Hodges• Paul Withers• Tim Tripcony

Verbraucherinformation

http://www.amazon.de/Xpages-Extension-Library-Step---Step/dp/0132901811/ref=sr_1_2?ie=UTF8&qid=1317625666&sr=8-2

DNUG Konferenz: Wie werden wir morgen arbeiten?

Extension Library Demo Application

DNUG Konferenz: Wie werden wir morgen arbeiten?

Demo

DNUG Konferenz: Wie werden wir morgen arbeiten?

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

Demo

DNUG Konferenz: Wie werden wir morgen arbeiten?

Geht auch ohne extension Library …

Was brauchen wir ?? Datenbank JDBC – Treiber

• z.B. MySQL http://dev.mysql.com/downloads/connector/j/• Gibt es für alle gängigen Datenbanksysteme

Funktionscode, der über den Treiber auf die Daten in der Datenbank zugreift (Query / Insert / Update / Delete )

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

XPages Relational Database Support

MySQL Workbench

http://www.mysql.de/products/workbench/

DNUG Konferenz: Wie werden wir morgen arbeiten?

Package Explorer

Neues Design Element in 8.5.3 – ‚Code Java‘

Exkurs: Java in XPages

DNUG Konferenz: Wie werden wir morgen arbeiten?

Treiber einbinden (Client)• Package Explorer öffnen

• Ordner erstellen • WebContent WEB-INF lib

• Treiber per DragDrop in Ordner ziehen

• Buildpath• Rechtsklick Build Path Use as Source Folder

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

Treiber einbinden (Server)• data\domino\workspace\applications\eclipse\plugins• HTTP Task neu starten

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

de.eknori.jdbc.MySQL• executeQuery()• executeUpdate()

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

JavaScript Library

XPages Relational Database Support

DNUG Konferenz: Wie werden wir morgen arbeiten?

Demo

DNUG Konferenz: Wie werden wir morgen arbeiten?

2011: Erster Development Contest auf OpenNTF

54 neue Custom Controls und 10 Library Controls Übersicht über alle eingereichten Controls + Videos

• http://xpages.info/XPagesHome.nsf/Contest.xsp

Custom Controls

DNUG Konferenz: Wie werden wir morgen arbeiten?

notes.ini variable• Server und Client

• XPagesPreload=1• Lädt die XPages runtime Komponenten beim Serverstart

• XPagesPreloadDB=Server!!Db.nsf/XPage.xsp,myLocalDb.nsf• XPages runtime Java classes

XPages preload (8.5.3)

DNUG Konferenz: Wie werden wir morgen arbeiten?

Fasst automatisch mehre DoJo Module oder CSS Files in einer einzigen Datei zusammen. • Weniger Anfragen vom Browser an den Server• Verbesserung der Performance im Netzwerk• JS/CSS kann vom Browser schneller verarbeitet werden. • Weniger Server Verbindungen.

Javascript / CSS Aggregation (8.5.3)

Serverweit in xsp.properties:xsp.resources.aggregate=true

DNUG Konferenz: Wie werden wir morgen arbeiten?

Javascript / CSS Aggregation

DNUG Konferenz: Wie werden wir morgen arbeiten?

Ermitteln der installierten Version der eXtension Library

• var v = com.ibm.xsp.extlib.util.ExtLibUtil.getExtLibVersion();

• return "XPages ExtLib version: "+ v

Installierte Version

• Mail: eknori@eknori.de• Blog: http://www.eknori.de• Sametime: bleedyellow.com• Twitter: eknori

Q + A

DNUG Konferenz: Wie werden wir morgen arbeiten?

Ihre Bewertung der Präsentation

Bitte nehmen Sie sich die Zeit, um diesen Vortrag zu bewerten(A6-Block in Ihren Konferenzunterlagen)

RückgabeGeben Sie das ausgefüllte Bewertungsblatt bei dem Moderator/Betreuer Ihres Vortrages bzw. am Tagungscounter der DNUG ab.

.

DNUG Konferenz: Wie werden wir morgen arbeiten?

http://www.electricplum.com/dlsim.html