Posts Tagged: ‘EntwicklerCamp’

EntwicklerCamp 2014: XPages – WebServices und REST

19. März 2014 Posted by Bernd Hort

EntwicklerCamp

Der letzte Tag des EntwicklerCamps ist gekommen. Heute war mein zweiter Vortrag zum Thema "XPages - WebServices und REST". In 90 Minuten habe ich ausführlich beschrieben, wie Webservices und RESTful Webservices innerhalb von XPages konsumiert werden können. Die erste Hälfte des Vortrages konzentrierte sich auf das Backend mittels Java. In der zweiten Hälfte habe ich den Blick auf JavaScript im Browser gerichtet.

Wie immer können die Folien und die Beispiel-Anwendung heruntergeladen werden. Basis für diesen Vortrag war mein Vortrag auf der IBM Connect 2014: BP 206 - Be Open - Use Web Services and REST in XPages Applications. Insofern ist die Beispiel-Anwendung die gleiche wie beim IBM Connect-Vortrag.

 

In der Beispiel-Anwendung befinden sich nicht nur XPages, um die Webservices und RESTful Webservices zu konsumieren. Damit die Beispiele auch bei Ihnen ohne Probleme laufen, sind ein Webservice und drei RESTful Webservices implementiert.

Webservice

Die WSDL-Datei zu dem Webservice kann über
http://{Ihr-Server}/{Datenbank-Pfad}/sessionService?wsdl
erreicht werden.

RESTful Webservice

Um verschiedene Techniken zu zeigen, gibt es insgesamt 3 RESTful Webservices, die alle die XPages Extension Library - OpenNTF benötigen.

Custom Database Servlet

Der erste RESTful Webservice verwendet ein Custom Database Servlet.
http://{Ihr-Server}/{Datenbank-Pfad}/xsp/services/Sessions
CustomDatabaseServlet.png

RESTService Control - xe:viewJsonService

Der zweite RESTful Webservice basiert auf einem viewJsonService.
http://{Ihr-Server}/{Datenbank-Pfad}/extensionlibrary.xsp/sessions
viewJsonService.png

RESTService Control - xe:customRestService

Zu guter Letzt gibt es einen RESTful Webservice als customRestService
http://{Ihr-Server}/{Datenbank-Pfad}/customrestservice.xsp/sessions
http://{Ihr-Server}/{Datenbank-Pfad}/customrestservice.xsp/sessions/BP206
customRestService1.png
customRestService2.png

EntwicklerCamp 2014: JavaScript für Fortgeschrittene

19. März 2014 Posted by Thomas Bahn

EntwicklerCamp
Das EntwicklerCamp 2014 ist nun fast schon wieder vorbei.

Ich warte noch gespannt auf den Abschlussvortrag von Niklas Heidloff: Applikationsentwicklung mit IBM Collaboration Solutions. Heute morgen hat er angekündigt, es gehe um die 20 am häufigsten gestellten Fragen rund um die Entwicklung mit Notes und anderen ICS-Lösungen - heute, aber auch in Zukunft.

Meinen zweiten Vortrag, diesmal zum Thema JavaScript für Fortgeschrittene, habe ich eben gehalten. Und wie üblich sind hier die Folien zum "Noch-einmal-in-Ruhe-Nachlesen" für später:

EntwicklerCamp 2014: Ansichten für Gestaltungselemente

18. März 2014 Posted by Thomas Bahn

EntwicklerCamp
Der zweite Tag neigt sich langsam zu Ende, ich habe heute 4 äußerst interessante und inspirierende Sessions zu drei ganz besonderen Themen genossen: "iNotes deep dive", "C API-Benutzung in Notes und Domino" und "Applikationsentwicklung mit XPages und IBM Connections".

Im Moment läuft noch die Frage-Session. Leichtsinnigerweise habe ich versprochen, eine Ansicht verfügbar zu machen, in denen Gestaltungselemente und besondere Elemente wie z. B. die ACL dargestellt werden:

EntwicklerCamp 2014: XPages und Java

18. März 2014 Posted by Bernd Hort

EntwicklerCamp

Der erste meiner zwei Vorträge auf dem diesjährigen EntwicklerCamp lief sehr gut.

Im Vortrag „XPages und Java“ ging es primär darum, wie eigene Klassen für XPages in Java geschrieben werden können, was Managed Beans sind und welche Elemente aus dem JSF-Umfeld sinnvoll für eigene Anwendungen eingesetzt werden können. Den Abschluss bildete eine Betrachtung des Model-View-Controller-Patterns und wie wir es in unserem assono XPages-Framework einsetzen.

Die Beispielanwendung ist die gleiche wie letztes Jahr.


EntwicklerCamp 2014: Fehlerbehandlung in Notes

18. März 2014 Posted by Thomas Bahn

EntwicklerCamp
Wow, das ging schnell, der erste Tag ist schon vorbei, und auch mein erster Vortrag. Was mir dabei besonders gut gefallen hat, waren die vielen Fragen und die interessante Diskussion während des Vortrags. Sie halfen, das doch eher theoretische Thema mit Leben zu füllen.

Wie versprochen, die Präsentation zu meinem Vortrag Fehlerbehandlung in Notes:

EntwicklerCamp 2014: Morgen geht’s los

16. März 2014 Posted by Thomas Bahn

EntwicklerCamp
Ich sitze gerade im Zug von Kiel nach Hamburg, auf meinem Weg nach Gelsenkirchen, wo morgen im Maritim Hotel das EntwicklerCamp 2014 beginnt. Seit 2007 bin ich mit bis zu drei Vorträgen bei jedem EntwicklerCamp dabei gewesen.

Was erwarte ich von den nächsten drei Tagen?

Zunächst einmal ein großes, herzliches und buntes Wiedersehen mit Bekannten und Freunden. Eine der schönsten Aspekte der Camps ist für mich die großartige Gemeinschaft von tollen Leuten mit einem gemeinsamen Interesse. Und beim EntwicklerCamp ist das natürlich die Entwicklung von nützlichen Anwendungen auf Basis von IBM Notes und Domino.

Dann sind da die positiven, informativen und fast freundschaftlichen Gespräche in den Pausen und an den gemeinsamen Abenden. Natürlich werden viele fachliche Fragen gestellt und beantwortet, aber auch darüber hinaus findet sich so manches gemeinsames Interesse und viele tolle Themen, über die wir uns genüsslich austauschen.

Last, but not least sind da die Vorträge. Von Einführungen in neue Themen, über die praxisorientierten Hands-Ons bis zu Expeditionen in die tiefsten Tiefen der Entwicklung mit Notes und Domino, alle lehrreich, jedes Mal inspirierend und immer voller nützlicher Tipps und Tricks.

Diesmal werde über ich zwei, aus meiner Sicht besonders wichtige und relevante Themen vortragen dürfen:

Am Montag geht es gleich los mit Session 2 im Track 1:
"Fehler sind nützlich, aber nur, wenn man sie schnell findet."  - Fehlerbehandlung in Notes

John Maynard Keynes stellte einst fest: "Fehler sind nützlich, aber nur, wenn man sie schnell findet."

Fehler sind unvermeidlich. Punkt!

Selbst wenn man genügend Zeit bekäme, wirklich jeden Sonderfall durch zu denken, und die gesamte Anwendungen ausgiebig immer wieder zu testen, auch wenn man die fortschrittlichsten und teuersten Werkzeug benutzen könnte, die besten Experten nutzen dürfte, auch dann sind Fehler unvermeidlich, schon allein, weil viele kritische Komponenten außerhalb der Anwendung liegen: Hardware, Netzwerk, Betriebssystem, andere Anwendungen, Benutzer und sogar der Notes-Client soll ja gerüchteweise ein paar Fehler haben...

Und wer bekommt schon alle diese Ressourcen? Die Realität ist wohl eher: "Ich brauche diese Funktion gestern." und "Du brauchst zwei Tage? Du hast zwei Stunden."

In dieser Session lernst du, wie du
  • professionell mit Fehlern umgehen kannst und warum Fehlerbehandlung mehr ist als Fehlerprotokollierung,
  • alle Informationen zum Fehler und der Situation automatisch einsammelst, so dass du den Fehler in Zukunft richtig behandeln kannst,
  • Fehler beheben kannst, bevor sie überhaupt gemeldet werden und
  • eine Anwendung so robust machen kannst, dass sie nach einem Fehler sinnvoll reagiert und weiter laufen kann.

Wir schlendern durch die verschiedenen Programmiersprachen, die wir in Notes verwenden können: von der Formelsprache, über LotusScript und Java bis JavaScript. Dabei erfährst du in der Praxis bewährte Vorgehensweisen für die Protokollierung und - wo sinnvoll möglich - Fehlerbehandlung.

Du bekommst fertigen, erprobten Code für deine Anwendungen, den du sofort einsetzen kannst, und viele pragmatische Tipps und Best Practices, die dir deine Arbeit vereinfachen werden.

Um maximal von dieser Session zu profitieren, solltest du schon Anwendungen in Notes entwickelt haben und zumindest einige der genannten Programmiersprachen beherrschen.


Am Mittwoch geht es dann in die Tiefen von JavaScript mit Session 8 im Track 3: JavaScript für Fortgeschrittene

Mit den XPages hat JavaScript auch Einzug gehalten auf dem Server (Server-Side JavaScript = SSJS), in allen interaktiven Web-Anwendungen wird es auch im Browser genutzt - egal ob diese auf der "klassischen" Web-Entwicklung oder auf XPages-Technologie basieren (Client-Side JavaScript = CSJS).

Die JavaScript-Programmierung geht dann aber über das bisherige Maß (Feld-Validierung, vielleicht noch ein bisschen DOM-Manipulationen) deutlich heraus und muss Aufgaben abdecken, die bisher mit (objekt-orientierten) LotusScript und Java realisiert wurden. Die Komplexität der JavaScript-Programmierung steigt damit zwangsläufig und deutlich an.

Daher ist ein tiefgehendes Verständnis von JavaScript als Programmiersprache jetzt wichtiger denn je. Die Sprache ist sehr flexibel und hat einige eher ungewöhnliche, neue Konzepte (zumindest für LotusScript- und Java-Programmierer), die richtig verstanden werden müssen, um das Beste aus ihr heraus zu holen.

In dieser Session lernt ihr diese Konzepte (u.a. Kontexte, objekt-orientierte Programmierung mit JavaScript), ich erkläre ich die besonderen Stärken dieser Sprache (z. B. Guard- und Default-Operatoren, "Verbesserungen" existierender Objekte wie Object und Function), zeige typische Stolperfallen in JavaScript (wie With und Semikolon-Einfügung) und wie man sie vermeidet.

Der Vortrag ist konzipiert für Entwickler, die bereits Grundkenntnisse in JavaScript erworben haben.

EntwicklerCamp 2014: Nur noch zwei Wochen

4. März 2014 Posted by Bernd Hort

EntwicklerCamp

In zwei Wochen findet das EntwicklerCamp statt. Wie jedes Jahr freue ich mich riesig darauf. Drei Tage lang wird es nur um Anwendungsentwicklung rund um IBM Notes und Domino gehen.

Sicherlich sind XPages dieses Jahr wieder ein großem Thema. Vom irischen IBM XPages Labor wird Tony McGuckin wieder dabei sein. Seine drei Sessions versprechen Erkenntnisse aus erster Hand.

Abgesehen von diesem Hype-Thema, zu dem auch ich meinen Teil beitragen werde (s.u.), gibt es viele weitere spannende Themen. Stephan H Wissel wird sich drei Stunden lang einem seiner Lieblingsthemen widmen: XML. Darüber hinaus wird es Sessions zu LotusScript, Fehlerbehandlung, Connections, Java, C/C++ geben. Das faszinierende an Notes als Entwicklungsplattform ist seine Vielseitigkeit. Das EntwicklerCamp schafft es jedes Jahr wieder diese Vielseitigkeit abzubilden und für jeden neue Erkenntnisse bereit zu halten.

Track 2 - Session 5 XPages und Java
Dienstag, 18.03.2014, 13:30 - 15:00

Die Beschreibung des Vortrages lautet:

In der Session "XPages und Java" wird zunächst beschrieben, wie Java im allgemeinen und eigene Java-Klassen im besonderen in XPages-Anwendungen verwendet werden können. Anschließend wird auf die Basis von XPages, JavaServer Faces JSF, eingegangen. Neben dem JSF Lifecycle werden die verschiedenen Konzepte und Klassen erklärt.

Selbstverständlich geht der Vortrag auch auf die magischen Bohnen ein: Managed Beans.

Kenntnisse in XPages und Java sind Voraussetzung.

Track 2 - Session 8 XPages - WebServices und REST konsumieren
Mittwoch, 19.03.2014, 11:00 - 12:30

Die Beschreibung des Vortrages lautet:

Lotus Domino war schon immer ein integratives System. Mit XPages ist es sogar noch einfacher, auf andere Systeme zuzugreifen. In dieser Session wird erklärt, wie Web Services und / oder RESTful Service (REST) innerhalb von XPages verwendet werden können. Nach einer kurzen Einführung in Web Services und REST zeigen wir, wie Web Services und RESTful Web Services vom Server Backend via Java aufgerufen werden können. Anschließend wechseln wir auf die Browser-Seite und untersuchen die Aufrufmöglichkeiten mittels JavaScript. Dabei werden wir auch auf den Einsatz von dojo für dieses Zwecke eingehen.

Kenntnisse in XPages und Java sind mehr als vorteilhaft.

Wie jedes Jahr werden wir die Folien und Beispielanwendungen in unserem Block veröffentlichen


EntwicklerCamp 2013: Fehlerbehandlung in Notes

13. März 2013 Posted by Bernd Hort

EntwicklerCamp

Das EntwicklerCamp ist leider fast vorbei. Mein zweiter Vortrag zum Thema „Fehlerbehandlung in Formelsprache, LotusScript, Java, JavaScript und XPages“ war heute vormittag.

Das nächste EntwicklerCamp ist vom 17.03. bis zum 19.03.2014. Ich freue mich schon!


EntwicklerCamp 2013: XPages und Java

12. März 2013 Posted by Bernd Hort

EntwicklerCamp

Heute durfte ich den ersten meiner zwei Vorträge auf dem diesjährigen EntwicklerCamp halten.

Im Vortrag „XPages und Java“ ging es primär darum, wie eigene Klassen für XPages in Java geschrieben werden können, was Managed Beans sind und welche Elemente aus dem JSF-Umfeld sinnvoll für eigene Anwendungen eingesetzt werden können. Den Abschluss bildete eine Betrachtung des Model-View-Controller-Patterns und wie wir es in unserem assono XPages-Framework einsetzen.


EntwicklerCamp 2013: Reite den Mustang DIY – Selbst ist der künftige Java-Entwickler

12. März 2013 Posted by Thomas Bahn

EntwicklerCamp
Heute habe ich auf dem EntwicklerCamp 2013 meinen einführenden Vortrag von gestern um eine praktische Übung ergänzen dürfen. Wir sind gemeinsam die ersten Schritte gegangen, haben ein kleines Programm entwickelt, ausgeführt und den Debugger genutzt. Das Beispielprogramm lädt u.a. eine Web-Seite und eine JPEG-Grafik herunter und speichert beides in Dokumenten, wobei die Grafik "nebenbei" in eine PNG-Grafik konvertiert wird.


Die Präsentation und Beispiele zum Hands-On "Reite den Mustang DIY - Selbst ist der künftige Java-Entwickler":

EntwicklerCamp 2013: Reite den Mustang – Java-Entwicklung in Notes und Domino

12. März 2013 Posted by Thomas Bahn

EntwicklerCamp
Gestern durfte ich auf dem EntwicklerCamp 2013 meinen einführenden Vortrag in die Java-Entwicklung für Notes- und Domino-Entwickler halten. Nach einer kurzen Einführung in die Syntax und einige für LotusScript-Entwickler ungewöhnliche Konzepte zeige ich anhand vieler Beispiele die verschiedenen Möglichkeiten, Java in/mit Notes und Domino einzusetzen: Applets, Agents, Standalone-Anwendungen, Servlets usw.


Die Präsentation und Beispiele zum Vortrag Reite den Mustang - Java-Entwicklung in Notes und Domino:

EntwicklerCamp 2013: Wir sind dabei – Ergänzung

7. März 2013 Posted by Bernd Hort

EntwicklerCamp

Wie bereits berichtet, sind wir beim diesjährigen EntwicklerCamp wieder dabei. Weil eine Referentin ausgefallen ist, sind wir mit einem weiteren Vortrag eingesprungen.

Track 3 - Session 8: Fehlerbehandlung in Formelsprache, LotusScript, Java, JavaScript und XPages
Mittwoch, 13.03.2013, 11:00-12:30

Die Beschreibung des Vortrages lautet:

Sie haben eine Anwendung gut entwickelt und getestet. Trotzdem passiert das Unerwartete: ein Fehler ist aufgetreten. Jetzt entscheidet sich, ob Sie wirklich ein Profi sind.

Fehlerbehandlung ist das wahrscheinlich am meisten unterschätzte Thema in der Lotus Notes Anwendungsentwicklung.

Angefangen von Formelsprache gehen wir weiter zu LotusScript, um uns dann den Hypethemen JavaScript, Java und XPages zuzuwenden. In allen Programmiersprachen zeigen wir die Möglichkeiten und diskutieren die jeweils sinnvollste Strategie.

Nicht, dass wir jemals Fehler machen würden.


EntwicklerCamp 2013: Wir sind dabei

30. Januar 2013 Posted by Thomas Bahn

EntwicklerCamp
Wir sind beim diesjährigen EntwicklerCamp wieder dabei, diesmal mit zwei Vorträgen und einer Hands-On-Session:


Track 3 - Session 2: Reite den Mustang - Java-Entwicklung in Notes und Domino
Montag, 11.03.2013, 16:00-17:30

Im ersten Teil dieses Vortrags geht es um die Sprache selbst: Wie ist die Syntax, wie schreibt man z. B. Schleifen und bedingungte Anweisungen, wie definiert man Routinen und Klassen und wie nutzt man sie usw.?
Danach wird gezeigt, wo und wie man im Domino Designer unter Eclipse (DDE, ab Version 8.5) Java programmieren kann.
Es folgen einige praktische Beispiele, die die verschiedenen Einsatzmöglichkeiten veranschaulichen.

Die Teilnehmer benötigen keine Vorkenntnisse in Java, sollten aber Erfahrung in der Entwicklung mit LotusScript oder JavaScript mitbringen.
Die Session bietet eher einen Überblick über die Sprache und wo man sie bei Notes und Domino einsetzen kann. Sie geht nicht in die Tiefe - dafür ist das Thema zu groß - und bietet damit eine solide Grundlage für die eigene, weitere Einarbeitung.

Hands-On 3: Reite den Mustang DIY - Selbst ist der künftige Java-Entwickler
Dienstag, 12.03.2012, 9:00-10:30

"Grau, teurer Freund, ist alle Theorie // Und grün des Lebens goldner Baum." - Johann Wolfgang von Goethe, Faust I


Nach der theoretischen Einführung gestern geht es jetzt ans Selber-Machen. Entwickle deine ersten, kleinen Java-Programme im Domino Designer on Eclipse.

Du solltest einen möglichst aktuellen, funktionierenden Domino Designer, mindestens aber Version 8.5 auf deinem Notebook dabei haben, um all' die geilen Übungen selbst nachvollziehen zu können.

Track 1 - Session 5: XPages und Java
Dienstag, 12.03.2013, 14:00-15:30

Stellt Euch vor, Ihr könntet alle Pflichtfelder einer XPage in einer Zeile definieren. Außerdem würden automatisch alle zugehörigen Labels als Pflichtfelder markiert. Stellt Euch weiter vor, der Inhalt der XPage könnte einfach als ein PDF-Dokument ausgegeben werden. Auf relationale Datenbanken ohne Extension Library zugreifen. Alles kein Problem mit Java in XPages.

In der Session gehen wir zunächst auf die Basis von JavaServer Faces ein. Wir behandeln den Lifecycle einer XPage und wie er sich auswirkt. Anschließend zeigen wir, wie eigene Java-Klassen geschrieben werden können. Von da aus steht uns die gesamte faszinierende Welt von Java offen. Die Session schließt mit dem Konzept, wie man sauber die Business-Logik von der Darstellung (die XPages) trennt.

EntwicklerCamp 2012: JavaScript leicht gemacht

2. April 2012 Posted by Manuel Nientit

EntwicklerCamp
Wie auf dem EntwicklerCamp versprochen die Folien, Übungen und Musterlösungen zur Hands-On 1: JavaScript die ersten Schritten/leicht gemacht

Ich hatte viel Spaß, sowohl bei meiner Hands-On als auch in den anderen Sessions. Ich hoffe, dass ihr etwas mitnehmen konntet bzw. etwas mitnehmen könnt.


Ich freue mich schon auf das nächste Entwicklercamp vom 11.03. bis zum 13.03.2013!


EntwicklerCamp 2012: Zähme den Tiger – Java-Entwicklung in Notes und Domino

30. März 2012 Posted by Bernd Hort

EntwicklerCamp
Wie auf dem EntwicklerCamp versprochen die Folien und Beispiele zu dem Vortrag Track 1 - Session 7: Zähme den Tiger - Java-Entwicklung in Notes und Domino

Ich kenne keine Konferenz im deutschsprachigen Raum bei der soviel geballtes Notes-Know how vorhanden ist. Es macht wirklich jedes Jahr viel Spaß. Auch wenn dieses Jahr der Schwerpunkt eindeutig XPages war, gab es auch viele spannende Vorträge zu anderen Entwicklungsthemen.

Das nächste EntwicklerCamp ist vom 11.03. bis zum 13.03.2013. Wir werden sicherlich wieder mit dabei sein!

 

Noch ein Hinweis zum Thema "Java unter Lotus Domino". Es gibt ein sehr gutes Buch von
Thomas Ekert: "Java unter Lotus Domino" vom Springer Verlag, ISBN 978-3540221760, 804 S.

Das Buch ist auf Deutsch und wird zur Zeit zu einem genialem Preis von 9,95 € verkauft.

buch_java_unter_Lotus_Domin.png