361 Lotus blogs updated hourly. Who will post next? Home | Downloads | Events | Pods | Blogs | Search | myPL | About 
 
Latest 7 Posts
Quick-Tipp: E-Mails mit POP3 abholen - E-Mail-Server mag nur TLS
Fri, Nov 21st 2014 50
Windows Remote-Desktop-Service über SSH aktivieren
Fri, Nov 21st 2014 70
JOBBUS 2014, Schleswig-Holstein
Wed, Nov 12th 2014 110
Ideenwettbewerb Schleswig-Holstein 2014
Tue, Nov 11th 2014 111
Quick Tip: After renaming hostname of Sametime server, DB2 doesn't start anymore
Tue, Oct 21st 2014 147
Sicherheitslücke im Android Standardbrowser
Thu, Oct 9th 2014 79
IBM SmartCloud wird zu IBM Connections Cloud
Thu, Oct 2nd 2014 63
Top 10
Quick Tip: After renaming hostname of Sametime server, DB2 doesn't start anymore
Tue, Oct 21st 2014 147
Ideenwettbewerb Schleswig-Holstein 2014
Tue, Nov 11th 2014 111
JOBBUS 2014, Schleswig-Holstein
Wed, Nov 12th 2014 110
automatische Telefonwahl über das Softphone "Phoner" aus IBM Notes heraus - eine einfache Anleitung
Tue, Sep 3rd 2013 100
Empfangsbestätigung für jede eingehende E-Mail
Wed, Apr 11th 2012 88
Sicherheitslücke im Android Standardbrowser
Thu, Oct 9th 2014 79
IBM Notes Traveler 9.0.0.1 IF7 und 9.0.1 IF6 erschienen
Wed, Sep 17th 2014 76
Quick Tip: Validate current user by enforcing him to enter his password
Tue, Sep 30th 2014 73
Auch mit Firefox 31 nun keine selbstsignierten SSL Zertifikate mehr unterstützt
Fri, Aug 1st 2014 71
Windows Remote-Desktop-Service über SSH aktivieren
Fri, Nov 21st 2014 70


assono XPages-Framework - mobile Entwicklungsstragie
Bernd Hort    

assono XPages-Framework

Beim Thema mobile Endgeräte gibt es zwei wesentliche Erkenntnisse. Die erste Erkenntnis ist, dass Smartphones und Tablets die Art und Weise wie wir leben und arbeiten in wenigen Jahren grundlegend verändert haben. Man darf gespannt sein, was die Zukunft noch alles bringt, denn bei dieser Entwicklung stehen wir erst am Anfang,

Die zweite Erkenntnis aus Sicht des Softwareentwicklers betrifft die Frage, wie mobile Anwendungen am Besten zu entwickeln sind. Die verschiedensten Ansätze gehen von einfachen Web Anwendungen bis hin zu nativen Anwendungen, die für das jeweilige Smartphone / Tablet Betriebssystem geschrieben werden. Das Spannungsfeld liegt, wie bei den meisten Entscheidungen in der Software-Entwicklung, im Dreieck zwischen Qualität, Zeit und Budget. Wobei in dem Fall Qualität sich auf die optimale Nutzung der Möglichkeiten des jeweiligen Betriebssystem bezieht.

Um es klar zu sagen: Wenn Zeit und Budget keine Rolle spielt, ist eine native Anwendung sicherlich das Optimum. Vor zwei/drei Jahren war diese Entscheidung noch einfacher. Das iPhone und damit iOS war das Maß aller Dinge. Mit dem stärker werdenden Marktanteil von Android mussten mindestens zwei Plattformen unterstützt werden. Im primär geschäftlichen Umfeld konnten Anwendungen auch für BlackBerry entwickelt werden. Eventuell schafft es Microsoft zusammen mit Nokia doch noch, Windows 8 zu einem erst zu nehmenden Player in dem Markt werden zu lassen.

Mit dem stärker werdenden Trend Bring-Your-Own-Device fällt die Entscheidung, welche Plattform unterstützt werden soll, zunehmend schwieriger. Für zwei oder drei, eventuell sogar vier, Plattformen native Anwendungen zu entwickeln und auch noch "Feature"-gleich zu halten, bedeutet erhebliche Mehraufwände. Zumal das notwendige Know-how für jede dieser Plattformen vorhanden und stets aktuell gehalten werden muss.

Eine Alternative sind Entwicklungsumgebungen wie PhoneGap. Der Anwendungscode wird Plattform-unabhängig entwickelt und anschließend werden für die jeweiligen Plattformen native Clients generiert. Es kann dementsprechend nur der kleinste gemeinsame Nenner aller Plattformen unterstützt werden, aber auch der hat schon einen beträchtlichen Umfang. Gegebenenfalls kann aber auch PhoneGap so eingesetzt werden, dass auf die besonderen Fähigkeiten der einzelnen Plattformen Rücksicht genommen wird.

Auf der anderen Seite werden Web Anwendungen für Smartphones / Tablets mit den Möglichkeiten von HTML5 und CSS3 auch immer mächtiger. Das neueste Schlagwort in diesem Bereich heißt "Responsive (Web) Design". Ziel dabei ist es, die Anwendung von vorne herein so zu entwickeln, dass sie möglichst sowohl im Desktop-Browser als auch von mobilen Browsern optimal zu bedienen ist. Dieser Ansatz verspricht deutlich geringere Kosten bei der Entwicklung.

Bleibt also die Frage, was ist die richtige mobile Entwicklungsstrategie insbesondere im Hinblick auf XPages-Anwendungen?


Die vielleicht auf den ersten Blick unbefriedigende Antwort lautet: Es hängt von den Anforderungen ab.

Themen wie Push-Notifikationen, Zugriff auf Kalender / Kontakte auf den mobilen Geräten und Verschlüsselung sprechen für einen nativen Client. Auch der Themenbereich Offline-Fähigkeit ist eventuell ein Grund eher in Richtung nativer Client zu gehen.

Ist ein nativer Client notwendig, so favorisieren wir PhoneGap. Einfach aus dem Grund heraus, dass in PhoneGap in HTML und JavaScript entwickelt wird. Wir können also das Know-how und die Erfahrung aus der XPages-Welt nutzen.

Wenn die Anforderungen aber den nativen Client nicht zwingend erforderlich machen, so ist die Web Entwicklung unsere erste Wahl. Eine Anwendung so zu entwickeln, die sowohl vom Desktop als auch von mobilen Endgeräten bedient werden kann, ist allein vom Zeit- und Kostenaspekt her absolut sinnvoll.

Was bedeutet diese Unsicherheit bezüglich der Architektur nun für unser XPages-Framework?

Das in meinem letzten Blogeintrag "assono XPages-Framework - Trennung von Business Logik und Darstellung" beschriebene Prinzip des Model View Controller–Pattern kann seine Vorteile voll ausspielen.

Das Model View Controller–Pattern ist so aufgebaut, dass die Business–Logik sich komplett im so genannten Model befindet. Die Oberfläche wird in der View realisiert. Die gesamte Interaktion zwischen dem Model und der View wird über den Controller gesteuert. Das Model View Controller–Pattern auf XPages angewendet hat folgenden Aufbau.

Model View Controller-Pattern in XPage-Anwendungen

Betrachten wir einmal die verschiedenen Szenarien für mobile Anwendungen.

Responsive (Web) Design

Sollte sich die Anforderungen an das Projekt so umsetzen lassen, dass sich die Anwendung mit der gleichen Weboberfläche gut sowohl im Desktop-Browser als auch im mobilen Browser bedienen lässt, so benötigen wir lediglich ein Model, einen Controller und die XPage.

Separate Webseiten für mobile Browser

Bisweilen greift der Ansatz des "Responsive (Web) Design" zu kurz und separate Webseiten für mobile Browser sind unumgänglich. In einem solchen Fall können die gleichen Klassen für das Model verwendet werden. Jeglicher Code, die Business-Logik betreffend, ist also nur einmal vorhanden. Es müsste lediglich ein weiterer Controller für die Interaktion geschrieben werden und die XPages für den mobilen Browser.

Native Anwendung

Für die Datenanbindung für native Anwendungen bieten sich REST-Services an. Selbstverständlich müssen für Daten, die über eine native Anwendung in das System gelangen, die gleichen Regeln gelten wie für Daten vom Desktop-Browser. Über einen separaten Controller wird wiederum der gleiche Code im Model angesprochen, so dass Business-Logik immer die gleiche ist.

 

Zusammenfassend liegt der große Vorteil in unserem XPages-Framework darin, dass unabhängig von der Zugriffsart immer der gleiche Code im Model angesprochen wird. Jede Anpassung auf der Ebene muss nur einmal vorgenommen werden. Dieses Prinzip spart Entwicklungszeit und sorgt für eine bessere Wartbarkeit der Anwendung.

XPages-Framework und mobile Entwicklungsstragie


---------------------
http://www.assono.de/blog/d6plinks/assono_XPages-Framework-mobile-Strategie
Dec 14, 2012
25 hits



Recent Blog Posts
50


Quick-Tipp: E-Mails mit POP3 abholen - E-Mail-Server mag nur TLS
Fri, Nov 21st 2014 11:19a   Thomas Bahn
Seit früher in diesem Jahr erlauben viele E-Mail-Provider nur noch das verschlüsselte Abholen und Senden von E-Mails über POP3, IMAP und SMTP. Wegen eines Sicherheitsproblems mit SSL v3 (POODLE) schalten einige Server-Betreiber dieses Protokoll jetzt ab und erlauben nur noch TLS. Dazu gehören auch die E-Mail-Provider GMX und web.de. Wenn man mit dem Notes-Client E-Mails per POP3 von E-Mail-Servern abholen will, die nur TLS erlauben, muss man den Notes-Client aktualisieren - und zwar (m [read] Keywords: domino ibm lotus notes archive profile server smtp
70


Windows Remote-Desktop-Service über SSH aktivieren
Fri, Nov 21st 2014 5:12a   Thomas Bahn
Wenn man einen SSH-Dienst auf einem Windows-Server installiert hat und sich mit diesem verbindet, kann man einen Tunnel für beliebige TCP-Ports aufmachen und so z. B. VNC oder Remote-Desktop-Verbindung nutzen. Gerade die Kombination aus SSH-Dienst und Remote-Desktop-Verbindung (mstsc) nutze ich gerne für Fernwartungszwecke. Aus Sicherheitsgründen wird der Remote-Desktop-Dienst (TermService) inzwischen deaktiviert ausgeliefert. Was also tun, wenn man ihn nur mittels der SSH-Konsole aktivier [read] Keywords: desktop server
110


JOBBUS 2014, Schleswig-Holstein
Wed, Nov 12th 2014 4:06a   Filip Meyer
Eine berufliche Zukunft im IT-Bereich in Schleswig-Holstein? Bei assono ist das möglich! Vielen Studenten aus dem IT-Bereich mangelt es an Informationen über die breite Unternehmenslandschaft und Berufseinstiegschancen in Schleswig-Holstein. Der von der DiWiSH, Digitale Wirtschaft Schleswig-Holstein, zum ersten Mal organisierte und durch die Prof. Dr. Werner Petersen Stiftung unterstützte JOBBUS 2014 soll deshalb Unternehmen und zukünftige Absolventen zusammenbringen und Einblicke in das B [read] Keywords:
111


Ideenwettbewerb Schleswig-Holstein 2014
Tue, Nov 11th 2014 2:22p   Lydia Bahn
Es war wieder spannend, sehr, sehr spannend! Von den zahlreichen, interessanten Ideen, die eingereicht wurden, hatten es die besten und vielversprechendsten 15 Ideen bis in die Finalrunde geschafft. Die Teams durften vor einer Jury von verschiedensten Experten, darunter Thomas Bahn, Geschäftsführer der assono GmbH, selbst ihre Ideen vorstellen und Fragen beantworten. Es gab nur 6 Preise und alle Ideen waren sicherlich "preisverdächtig". Trotzdem musste sich die Jury entscheiden, und das [read] Keywords:
147


Quick Tip: After renaming hostname of Sametime server, DB2 doesn't start anymore
Tue, Oct 21st 2014 1:56p   Thomas Bahn
I recently changed the name of a IBM Sametime server, i.e. the hostname of the (virtual) machine. On the same box runs the IBM DB2 server, which is used by the system console server and by the proxy server. Everything runs on top of Microsoft Windows 2008 R2. After the necessary reboot, DB2 greeted me with a "SQL1042C An unexpected system error occurred" and would not start - neither as a service, neither manually. Even the DB2 command console exited immediately. In the details of the logs [read] Keywords: ibm sametime sametimeibm archive database db2 microsoft server
79


Sicherheitslücke im Android Standardbrowser
Thu, Oct 9th 2014 6:12a   Manuel Nientit
Bereits Anfang September wurde offenbar eine nicht unbedingt kleine Sicherheitslücke im Android Standardbrowser AOSP entdeckt. Damals ist mir das leider entgangen. Ich wurde erst jetzt wieder darauf aufmerksam als golem erneut berichtete und feststellte, dass ca. 60% der deutschen Android-Nutzer davon betroffen sein dürften. Betroffen sind nämlich Android Versionen < 4.4, die weltweit auf immer noch ca. 75% der Geräte kursieren. Der Fehler betrifft die "Same-Origin-Policy", die verh [read] Keywords: javascript
63


IBM SmartCloud wird zu IBM Connections Cloud
Thu, Oct 2nd 2014 6:22a   Bent Kalbhenn
IBM hat angekündigt, die IBM SmartCloud zu „rebranden“, also auf gut Deutsch: umzubenennen. Die neue Bezeichnung ist ab sofort IBM Connections Cloud. Weitere dazugehörige Produkte wurden ebenfalls umbenannt. Hier die neuen Bezeichnungen der IBM Connections Cloud: IBM SmartCloud Engage Advanced IBM Connections Cloud S1 IBM SmartCloud Engage Standard IBM Connections Cloud S2 IBM SmartCloud iNotes IBM Web Mail Cloud IBM SmartCloud Archive Essentials IBM Connections Archive Esse [read] Keywords: connections ibm inotes archive




66


AdminCamp 2014: Probier's mal mit Gemütlichkeit
Wed, Oct 1st 2014 6:29a   Thomas Bahn
Es war wieder einmal ein unwahrscheinliches Erlebnis. Weit über hundert Domino-Administratoren und jeder ist engagiert, interessiert und hoch motiviert. Das ist das Admin Camp! Alles war toll: Die Leute, die hochklassigen Vorträge, die Verpflegung, die Abendveranstaltungen, ... Ich werde schon ganz wehmütig. Aber nach dem AdminCamp ist vor dem EntwicklerCamp, nächstes Jahr vom 2. bis 4. März, wieder hier in Gelsenkirchen. Ich freue mich schon darauf. Die Präsentation zu meinem [read] Keywords: admin domino archive
73


Quick Tip: Validate current user by enforcing him to enter his password
Tue, Sep 30th 2014 10:44a   Thomas Bahn
I had a "small" request from a customer last week: He'd be interested in the extended commercial version of our assono Password-Safe. But his internal audit team had the requirement that a user should have to re-enter his Notes client password when opening a document or copying it directly to the clipboard from a view. There is a @Command for this: ToolsUserLogoff. It just logs the user off, thus you have to combine it with some kind of server access to get the password input dialog to appe [read] Keywords: domino ibm lotus lotusscript notes notes client archive database openntf password server
57


AdminCamp 2014: Weil sicher sicher sicher ist - Sicherheit in IBM Domino
Tue, Sep 30th 2014 10:12a   Thomas Bahn
Der zweite Tag des diesjährigen AdminCamps nähert sich langsam dem Ende. Ich warte noch gespannt auf die Fragestunde nach dem Abendessen. Auf meine Frage gestern habe ich ganz viele wertvolle Antworten bekommen, so dass ich letzte Nacht gleich eine Lösung bauen konnte. Dazu gleich mehr in einem weiteren Blog-Eintrag. Hier schon mal die Präsentation zu meinem heutigen Vortrag in Track 2, Session 3: Weil sicher sicher sicher ist - Sicherheit in IBM Domino: T2S3-Weil-sicher-sicher-sicher [read] Keywords: domino ibm archive




Created and Maintained by Yancy Lent - About - Blog Submission - Suggestions - Change Log - Blog Widget - Advertising - Mobile Edition