SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Downloaden Sie, um offline zu lesen
Entwicklercamp 2013

XPages
Die Grundlagen
11. – 13..03.2013
Maritim Hotel, Gelsenkirchen

Ulrich Krause, BCC Unternehmensberatung GmbH
Über: Ulrich Krause
 Lotus Notes / Domino Administrator & Entwickler seit 1993
 Senior Software Architect
  BCC (Düsseldorf)

 OpenNTF Contributor
 OpenNTF Board of Directors

 IBM Champion 2011/2012/2013
 Blog http://www.eknori.de
 Notes Forum (http://www.atnotes.de)
Agenda
   Was sind XPages / Warum XPages ?
   Basis Technologien / Skills
   Wo laufen XPages?
   Portierung bestehender Anwendungen
   Domino Designer / Views / Perspektiven
   Beans / Managed Beans
   SSJS / CSJS
   Scoped Variables
   Praktisches Beispiel
Was sind XPages?
 Ein neues Design Element ab ND 8.5
 Überwindet uralte Limitierungen der Standard Notes
  Entwicklung (z.B. @DBLookup in Ansichten)
 Ermöglicht die Erstellung moderner, webbasierte
  Applikationen
 Verwendet XML Markup
 Controls, data sources, business logic, custom controls
 Trennung von Design und Daten
Evolution XPages Entwicklung
Basistechnologien / Skills
   HTML
   XML
   CSS
   JavaScript
   @Formulas
   Java
   AJAX                         @FOO($Bar)
   Dojo Toolkit
   JSF (Java Server Faces)
Warum XPages ?
   Moderne Werkzeuge, zeitgemäßer Code
   Portierung bestehender Anwendungen
   Cross Browser kompatibel, mobile Endgeräte
   Geben Sie Ihren Anwendern
    moderne Anwendungen
Niemand möchte Robin sein
White Paper
 Paul Withers - Maximize the Benefits of Lotus Domino 8.5.2
  with Xpages
      • http://hermes.intec.co.uk/Intec/Blog.nsf/dx/Maximising%20The
        %20Benefits%20of%20XPages%20in%208.5.2.pdf/$file/Maximising
        %20The%20Benefits%20of%20XPages%20in%208.5.2.pdf
Wo laufen meine XPages?
 Browser
   • Firefox, Safari, Chrome, Internet Explorer*
           – * IE6 must die! , sagt Microsoft
           – http://www.ie6countdown.com/
 Für die Entwicklung Firefox verwenden
   • Firebug
   • YSlow
   • PageSpeed
Wo laufen meine XPages?
 XPiNC ( XPages in Notes Client )




Kartsten Lehmann : XPages series #13: XPiNC app development tool:
http://www.mindoo.de/web/blog.nsf/dx/02.02.2012162412KLEL3Q.htm?opendocument&comments#anc1
Wo laufen meine XPages?
 Mobile Endgeräte
 iOS, Android, Blackberry …
 Simulatoren
Wo laufen meine XPages?
 Sidebar , Composite Application
   •   http://xpages.info/XPagesHome.nsf/Entry.xsp?documentId=24552AD3D535EC18852578CB00669EF8 (Paul
       Hannan )
Wo laufen meine XPages?
 Wenn es unbedingt sein muss / es gar nicht anders geht



     <iframe frameborder=”0” name=”myxpage”
             src=http://myserver/mydb.nsf/MyCoolPage.xsp>
     </iframe>
Applikationen nach XPages portieren?
                                                                     Handbuch
                                                                      Handbuch              Sweet
            CRM
             CRM
                                Intranet
                                 Intranet
                                                   Helpdesk
                                                                                            Spot
                                                    Helpdesk
                       3                                         1

                                                                           KM
                                                                            KM

                                      Zeiterfassung
                                       Zeiterfassung
Sichtbar      Buget
               Buget

                                         Urlaub
                                          Urlaub
            HRM                                                ISO 9000
                                                                ISO 9000
             HRM


                       4                                         2
                                                                                 TEST DB
                                                                                  TEST DB
                           Systemdoku
                            Systemdoku




                                                       Komplexität
Applikationen nach XPages portieren?
 Eine Portierung bestehender Anwendungen macht keinen
  Sinn wenn …

   • … es dafür ein Standard Template gibt
   • … die Funktionalität durch einen andere Technologie abgedeckt
     werden kann
          – IBM Connections oder IBM Quickr®
   • … die Anwendung ausschließlich von Admins und Entwicklern
     benutzt wird
   • … die Anwendung bereits eine funktionierende Web GUI besitzt
   • …
Einstieg in XPages
 IBM
   • Mastering XPages – IBM Press

 Matt White
   • XPages 101 (http://xpages101.net/)

 David Leedy
   • XPages TV (http://xpages.tv/ )
   • XPages Cheat Sheet
     (http://xpagescheatsheet.com/)

 Xpages Info

   • http://xpages.info/XPagesHome.nsf/Home.xsp
Domino Designer 7
Domino Designer 9
Perspectives / Eclipse Views
Perspectives / Eclipse Views
Working Sets
Virtuelles Filesystem




             Schliessen schließt nicht das
             Schliessen schließt nicht das
             Project im virtuellen Filesystem
             Project im virtuellen Filesystem
Notes Client Speichernutzung optimieren
 <NotesProgramDir>frameworkrcpdeployjvm.properties
   • vmarg.Xmx=-Xmx512m (max. HeapSize ¼ RAM)
   • vmarg.Xms=-Xms128m (min HeapSize)
       • Werte müssen durch 4 teilbar sein




    http://www.xpagedeveloper.com/2012/domino-designer-memory-configurator-is-here
Domino Designer individuell anpassen
 File  Preferences
 Nathan Freeman

   “Making Domino
  Designer work like
  you want”
  http://ntf.gbs.com/nathan/escape.nsf
   http://ntf.gbs.com/nathan/escape.nsf
  /d6plinks/NTFN-8GP6RP
   /d6plinks/NTFN-8GP6RP
WYGINWYS = What You Get Is Not What You See
 Was im Designer so aussieht
WYGINWYS = What You Get Is Not What You See
 Sieht im Browser so aus …




 http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=XPages%20Help
 %20Application OpenNTF XPages Help Application: Paul Withers
Unterschiedliche Sichten
SSJS / CSJS
Java ( Beans & Managed-Beans )
 Keine Unterschiede im Code
 Managed-Beans …
   •   werden deklariert
   •   haben eine Lebensdauer
   •   werden automatisch erzeugt, initialisiert, gelöscht
   •   werden über die Expression Language (EL) bereitgestellt
Scoped Variables
 Application
   The applicationScope duration is the WebModule duration. A web module is started when the first request
    comes in, and is eventually discarded after a period of inactivity, the default being 30 minutes. Every user of the
    application can access these variables once they are created, so there is no privacy with these variables. The
    applicationScope should only be used for data that must be shared among many XPages.
    Session
   With sessionScope variables, the variable lasts for the duration of a server session. This is when the user closes
    their browser, times out, or when a user logs off. The sessionScope is useful for using you want to store values
    for the current session only and specific to the current user

 View
   The viewScope is an XPage extension to JSF and it's variables exist for the duration of the current view i.e. the
    current page. They are not accessible outside of that view. The viewScope is useful when a value must be
    stored for the current page and can deleted when the user moves to another page.
    Request
   The requestScope variables last for the duration of the request. This means the variables will last for the
    duration of a url request from the server. The variable can exist across XPages i.e. if an XPage is requested
    from another XPage. The requestScope variables are useful for variables which can be deleted straight after the
    value is submitted to the server. This means that there is not extra memory being used to store variables that
    are no longer needed.
OpenNTF: XPages Extension Library
 Macht die Entwicklung von Web
  Anwendungen noch einfacher und schneller
 Integration in Domino Designer
 ~ 90 zusätzliche, kostenlose Custom Controls
 Open Source
 Eigene Erweiterungen durch Extensibility API

   • http://www.openntf.org/projects/pmt.nsf/ProjectLook
     up/XPages%20Extension%20Library
Das Endergebnis
Q+A
•   Mail: eknori@eknori.de
•   Blog: http://www.eknori.de
•   Sametime: bleedyellow.com
•   Twitter: eknori
Ec13 xpages-basic

Weitere ähnliche Inhalte

Was ist angesagt?

Virtualisierung 2008/2009 - eine Standorbestimmung
Virtualisierung 2008/2009 - eine StandorbestimmungVirtualisierung 2008/2009 - eine Standorbestimmung
Virtualisierung 2008/2009 - eine StandorbestimmungHenning Sprang
 
Ajax In Domino Web Anwendungen Der Naechste Schritt
Ajax In Domino Web Anwendungen Der Naechste SchrittAjax In Domino Web Anwendungen Der Naechste Schritt
Ajax In Domino Web Anwendungen Der Naechste Schrittdominion
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerSteven Grzbielok
 
Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007smancke
 
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbHEntwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbHstijink
 
WordPress vs. TYPO3
WordPress vs. TYPO3WordPress vs. TYPO3
WordPress vs. TYPO3webpard UG
 
Einstieg in das Windows Installer XML (WiX) ToolSet
Einstieg in das Windows Installer XML (WiX) ToolSetEinstieg in das Windows Installer XML (WiX) ToolSet
Einstieg in das Windows Installer XML (WiX) ToolSetRalf Abramowitsch
 
Browser Plug-In Notes 9 SE
Browser Plug-In Notes 9 SEBrowser Plug-In Notes 9 SE
Browser Plug-In Notes 9 SERalph Belfiore
 
bccon-2014 adm06 hony,_i_shrunk_the_data
bccon-2014 adm06 hony,_i_shrunk_the_databccon-2014 adm06 hony,_i_shrunk_the_data
bccon-2014 adm06 hony,_i_shrunk_the_dataICS User Group
 
Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"Oliver Busse
 
TYPO3 Migration in komplexen Upgrade- und Relaunch-Projekten
TYPO3 Migration in komplexen Upgrade- und Relaunch-ProjektenTYPO3 Migration in komplexen Upgrade- und Relaunch-Projekten
TYPO3 Migration in komplexen Upgrade- und Relaunch-ProjektenAlex Kellner
 
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsChristoph Adler
 
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)NETWAYS
 
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...Christoph Adler
 
Test-Driven-Development mit JUnit 4
Test-Driven-Development mit JUnit 4Test-Driven-Development mit JUnit 4
Test-Driven-Development mit JUnit 4Jörn Dinkla
 
EntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedEntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedRené Winkelmeyer
 
Electron.NET: Cross-Platform Desktop Software mit ASP.NET Core
Electron.NET: Cross-Platform Desktop Software mit ASP.NET CoreElectron.NET: Cross-Platform Desktop Software mit ASP.NET Core
Electron.NET: Cross-Platform Desktop Software mit ASP.NET CoreGregor Biswanger
 
Subversion Schulung
Subversion SchulungSubversion Schulung
Subversion SchulungJörn Dinkla
 
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kannXpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kannBelsoft
 

Was ist angesagt? (20)

Virtualisierung 2008/2009 - eine Standorbestimmung
Virtualisierung 2008/2009 - eine StandorbestimmungVirtualisierung 2008/2009 - eine Standorbestimmung
Virtualisierung 2008/2009 - eine Standorbestimmung
 
Ajax In Domino Web Anwendungen Der Naechste Schritt
Ajax In Domino Web Anwendungen Der Naechste SchrittAjax In Domino Web Anwendungen Der Naechste Schritt
Ajax In Domino Web Anwendungen Der Naechste Schritt
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with Docker
 
Ant im Detail
Ant im DetailAnt im Detail
Ant im Detail
 
Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007
 
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbHEntwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
 
WordPress vs. TYPO3
WordPress vs. TYPO3WordPress vs. TYPO3
WordPress vs. TYPO3
 
Einstieg in das Windows Installer XML (WiX) ToolSet
Einstieg in das Windows Installer XML (WiX) ToolSetEinstieg in das Windows Installer XML (WiX) ToolSet
Einstieg in das Windows Installer XML (WiX) ToolSet
 
Browser Plug-In Notes 9 SE
Browser Plug-In Notes 9 SEBrowser Plug-In Notes 9 SE
Browser Plug-In Notes 9 SE
 
bccon-2014 adm06 hony,_i_shrunk_the_data
bccon-2014 adm06 hony,_i_shrunk_the_databccon-2014 adm06 hony,_i_shrunk_the_data
bccon-2014 adm06 hony,_i_shrunk_the_data
 
Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"
 
TYPO3 Migration in komplexen Upgrade- und Relaunch-Projekten
TYPO3 Migration in komplexen Upgrade- und Relaunch-ProjektenTYPO3 Migration in komplexen Upgrade- und Relaunch-Projekten
TYPO3 Migration in komplexen Upgrade- und Relaunch-Projekten
 
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
 
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
 
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...
DNUG Domino Day 2018 - IBM Notes 10 & VOP 1.0.5 - What’s new and first „Lesso...
 
Test-Driven-Development mit JUnit 4
Test-Driven-Development mit JUnit 4Test-Driven-Development mit JUnit 4
Test-Driven-Development mit JUnit 4
 
EntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedEntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloaded
 
Electron.NET: Cross-Platform Desktop Software mit ASP.NET Core
Electron.NET: Cross-Platform Desktop Software mit ASP.NET CoreElectron.NET: Cross-Platform Desktop Software mit ASP.NET Core
Electron.NET: Cross-Platform Desktop Software mit ASP.NET Core
 
Subversion Schulung
Subversion SchulungSubversion Schulung
Subversion Schulung
 
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kannXpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
 

Andere mochten auch

La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!Ulrich Krause
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntfUlrich Krause
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin developmentDr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin developmentUlrich Krause
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the BasicsUlrich Krause
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUlrich Krause
 
MWLUG 2015 - An Introduction to MVC
MWLUG 2015 - An Introduction to MVCMWLUG 2015 - An Introduction to MVC
MWLUG 2015 - An Introduction to MVCUlrich Krause
 
Life In The FastLane: Full Speed XPages
Life In The FastLane: Full Speed XPagesLife In The FastLane: Full Speed XPages
Life In The FastLane: Full Speed XPagesUlrich Krause
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the BasicsUlrich Krause
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPagesUlrich Krause
 
Life in the fast lane. Full speed XPages
Life in the fast lane. Full speed XPagesLife in the fast lane. Full speed XPages
Life in the fast lane. Full speed XPagesUlrich Krause
 
Compact, Compress, De-Duplicate (DAOS)
Compact, Compress, De-Duplicate (DAOS)Compact, Compress, De-Duplicate (DAOS)
Compact, Compress, De-Duplicate (DAOS)Ulrich Krause
 
AdminCamp 2011 Performance
AdminCamp 2011 PerformanceAdminCamp 2011 Performance
AdminCamp 2011 PerformanceUlrich Krause
 
Dnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyondDnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyondUlrich Krause
 
DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011Ulrich Krause
 

Andere mochten auch (15)

La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!La vita nella corsia di sorpasso; A tutta velocità, XPages!
La vita nella corsia di sorpasso; A tutta velocità, XPages!
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin developmentDr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the Basics
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
MWLUG 2015 - An Introduction to MVC
MWLUG 2015 - An Introduction to MVCMWLUG 2015 - An Introduction to MVC
MWLUG 2015 - An Introduction to MVC
 
Life In The FastLane: Full Speed XPages
Life In The FastLane: Full Speed XPagesLife In The FastLane: Full Speed XPages
Life In The FastLane: Full Speed XPages
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
 
XPages Performance
XPages PerformanceXPages Performance
XPages Performance
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPages
 
Life in the fast lane. Full speed XPages
Life in the fast lane. Full speed XPagesLife in the fast lane. Full speed XPages
Life in the fast lane. Full speed XPages
 
Compact, Compress, De-Duplicate (DAOS)
Compact, Compress, De-Duplicate (DAOS)Compact, Compress, De-Duplicate (DAOS)
Compact, Compress, De-Duplicate (DAOS)
 
AdminCamp 2011 Performance
AdminCamp 2011 PerformanceAdminCamp 2011 Performance
AdminCamp 2011 Performance
 
Dnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyondDnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyond
 
DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011
 

Ähnlich wie Ec13 xpages-basic

B1 Acocon Lotus Day 08.09.2009
B1 Acocon Lotus Day 08.09.2009B1 Acocon Lotus Day 08.09.2009
B1 Acocon Lotus Day 08.09.2009Andreas Schulte
 
Ueberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web ApplicationsUeberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web ApplicationsGünther Haslbeck
 
Webinar - ABAP Development Tools
Webinar - ABAP Development ToolsWebinar - ABAP Development Tools
Webinar - ABAP Development ToolsCadaxo GmbH
 
Templates, Code & Tools
Templates, Code & ToolsTemplates, Code & Tools
Templates, Code & ToolsUlrich Krause
 
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Nico Orschel
 
Zurück in die Zukunft - DNUG 2014 - Track 5.2
Zurück in die Zukunft - DNUG 2014 - Track 5.2Zurück in die Zukunft - DNUG 2014 - Track 5.2
Zurück in die Zukunft - DNUG 2014 - Track 5.2panagenda
 
Day CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuDay CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuCédric Hüsler
 
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Droolscamunda services GmbH
 
Authoring Management
Authoring ManagementAuthoring Management
Authoring Managementvzimmermann
 
Scrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungScrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungAniello Bove
 
Projekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternProjekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternINM AG
 
Testautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für FortgeschrittendeTestautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für FortgeschrittendeNico Orschel
 

Ähnlich wie Ec13 xpages-basic (20)

B1 Acocon Lotus Day 08.09.2009
B1 Acocon Lotus Day 08.09.2009B1 Acocon Lotus Day 08.09.2009
B1 Acocon Lotus Day 08.09.2009
 
20110203 jug stuttgart
20110203 jug stuttgart20110203 jug stuttgart
20110203 jug stuttgart
 
Ueberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web ApplicationsUeberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web Applications
 
20110321 activiti märz
20110321 activiti märz20110321 activiti märz
20110321 activiti märz
 
2011 05-05 activiti
2011 05-05 activiti2011 05-05 activiti
2011 05-05 activiti
 
Webinar - ABAP Development Tools
Webinar - ABAP Development ToolsWebinar - ABAP Development Tools
Webinar - ABAP Development Tools
 
20110223 activiti
20110223 activiti20110223 activiti
20110223 activiti
 
Templates, Code & Tools
Templates, Code & ToolsTemplates, Code & Tools
Templates, Code & Tools
 
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
 
Zurück in die Zukunft - DNUG 2014 - Track 5.2
Zurück in die Zukunft - DNUG 2014 - Track 5.2Zurück in die Zukunft - DNUG 2014 - Track 5.2
Zurück in die Zukunft - DNUG 2014 - Track 5.2
 
Day CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuDay CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neu
 
2011 05 11 12-15 untersee_11.24 monitore und cockpits
2011 05 11 12-15 untersee_11.24 monitore und cockpits2011 05 11 12-15 untersee_11.24 monitore und cockpits
2011 05 11 12-15 untersee_11.24 monitore und cockpits
 
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
 
2010 09 20 AdminCamp News Monday
2010 09 20 AdminCamp News Monday2010 09 20 AdminCamp News Monday
2010 09 20 AdminCamp News Monday
 
Ec2009 Templates
Ec2009 TemplatesEc2009 Templates
Ec2009 Templates
 
mühlnickel beit_PechaKucha
mühlnickel beit_PechaKuchamühlnickel beit_PechaKucha
mühlnickel beit_PechaKucha
 
Authoring Management
Authoring ManagementAuthoring Management
Authoring Management
 
Scrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungScrum und Agile Software Entwicklung
Scrum und Agile Software Entwicklung
 
Projekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternProjekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meistern
 
Testautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für FortgeschrittendeTestautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für Fortgeschrittende
 

Mehr von Ulrich Krause

What is new in Notes & Domino Deleopment V10.x
What is new in Notes & Domino Deleopment V10.xWhat is new in Notes & Domino Deleopment V10.x
What is new in Notes & Domino Deleopment V10.xUlrich Krause
 
When Plato Left The Cave - A brief history of Lotus Notes
When Plato Left The Cave - A brief history of Lotus NotesWhen Plato Left The Cave - A brief history of Lotus Notes
When Plato Left The Cave - A brief history of Lotus NotesUlrich Krause
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & DominoUlrich Krause
 
AdminCamp2010, Closing General Session
AdminCamp2010, Closing General SessionAdminCamp2010, Closing General Session
AdminCamp2010, Closing General SessionUlrich Krause
 
Keine Angst vor Sametime 8.5.1
Keine Angst vor Sametime 8.5.1Keine Angst vor Sametime 8.5.1
Keine Angst vor Sametime 8.5.1Ulrich Krause
 
Compact, Compress, De-DUplicate
Compact, Compress, De-DUplicateCompact, Compress, De-DUplicate
Compact, Compress, De-DUplicateUlrich Krause
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for BeginnersUlrich Krause
 

Mehr von Ulrich Krause (10)

What is new in Notes & Domino Deleopment V10.x
What is new in Notes & Domino Deleopment V10.xWhat is new in Notes & Domino Deleopment V10.x
What is new in Notes & Domino Deleopment V10.x
 
When Plato Left The Cave - A brief history of Lotus Notes
When Plato Left The Cave - A brief history of Lotus NotesWhen Plato Left The Cave - A brief history of Lotus Notes
When Plato Left The Cave - A brief history of Lotus Notes
 
EntwicklerCamp CGS
EntwicklerCamp CGSEntwicklerCamp CGS
EntwicklerCamp CGS
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & Domino
 
Ccd
CcdCcd
Ccd
 
AdminCamp2010, Closing General Session
AdminCamp2010, Closing General SessionAdminCamp2010, Closing General Session
AdminCamp2010, Closing General Session
 
Keine Angst vor Sametime 8.5.1
Keine Angst vor Sametime 8.5.1Keine Angst vor Sametime 8.5.1
Keine Angst vor Sametime 8.5.1
 
Compact, Compress, De-DUplicate
Compact, Compress, De-DUplicateCompact, Compress, De-DUplicate
Compact, Compress, De-DUplicate
 
Daos
DaosDaos
Daos
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for Beginners
 

Ec13 xpages-basic

  • 1. Entwicklercamp 2013 XPages Die Grundlagen 11. – 13..03.2013 Maritim Hotel, Gelsenkirchen Ulrich Krause, BCC Unternehmensberatung GmbH
  • 2. Über: Ulrich Krause  Lotus Notes / Domino Administrator & Entwickler seit 1993  Senior Software Architect BCC (Düsseldorf)  OpenNTF Contributor  OpenNTF Board of Directors  IBM Champion 2011/2012/2013  Blog http://www.eknori.de  Notes Forum (http://www.atnotes.de)
  • 3. Agenda  Was sind XPages / Warum XPages ?  Basis Technologien / Skills  Wo laufen XPages?  Portierung bestehender Anwendungen  Domino Designer / Views / Perspektiven  Beans / Managed Beans  SSJS / CSJS  Scoped Variables  Praktisches Beispiel
  • 4. Was sind XPages?  Ein neues Design Element ab ND 8.5  Überwindet uralte Limitierungen der Standard Notes Entwicklung (z.B. @DBLookup in Ansichten)  Ermöglicht die Erstellung moderner, webbasierte Applikationen  Verwendet XML Markup  Controls, data sources, business logic, custom controls  Trennung von Design und Daten
  • 6. Basistechnologien / Skills  HTML  XML  CSS  JavaScript  @Formulas  Java  AJAX @FOO($Bar)  Dojo Toolkit  JSF (Java Server Faces)
  • 7. Warum XPages ?  Moderne Werkzeuge, zeitgemäßer Code  Portierung bestehender Anwendungen  Cross Browser kompatibel, mobile Endgeräte  Geben Sie Ihren Anwendern moderne Anwendungen
  • 9. White Paper  Paul Withers - Maximize the Benefits of Lotus Domino 8.5.2 with Xpages • http://hermes.intec.co.uk/Intec/Blog.nsf/dx/Maximising%20The %20Benefits%20of%20XPages%20in%208.5.2.pdf/$file/Maximising %20The%20Benefits%20of%20XPages%20in%208.5.2.pdf
  • 10. Wo laufen meine XPages?  Browser • Firefox, Safari, Chrome, Internet Explorer* – * IE6 must die! , sagt Microsoft – http://www.ie6countdown.com/  Für die Entwicklung Firefox verwenden • Firebug • YSlow • PageSpeed
  • 11. Wo laufen meine XPages?  XPiNC ( XPages in Notes Client ) Kartsten Lehmann : XPages series #13: XPiNC app development tool: http://www.mindoo.de/web/blog.nsf/dx/02.02.2012162412KLEL3Q.htm?opendocument&comments#anc1
  • 12. Wo laufen meine XPages?  Mobile Endgeräte  iOS, Android, Blackberry …  Simulatoren
  • 13. Wo laufen meine XPages?  Sidebar , Composite Application • http://xpages.info/XPagesHome.nsf/Entry.xsp?documentId=24552AD3D535EC18852578CB00669EF8 (Paul Hannan )
  • 14. Wo laufen meine XPages?  Wenn es unbedingt sein muss / es gar nicht anders geht <iframe frameborder=”0” name=”myxpage” src=http://myserver/mydb.nsf/MyCoolPage.xsp> </iframe>
  • 15. Applikationen nach XPages portieren? Handbuch Handbuch Sweet CRM CRM Intranet Intranet Helpdesk Spot Helpdesk 3 1 KM KM Zeiterfassung Zeiterfassung Sichtbar Buget Buget Urlaub Urlaub HRM ISO 9000 ISO 9000 HRM 4 2 TEST DB TEST DB Systemdoku Systemdoku Komplexität
  • 16. Applikationen nach XPages portieren?  Eine Portierung bestehender Anwendungen macht keinen Sinn wenn … • … es dafür ein Standard Template gibt • … die Funktionalität durch einen andere Technologie abgedeckt werden kann – IBM Connections oder IBM Quickr® • … die Anwendung ausschließlich von Admins und Entwicklern benutzt wird • … die Anwendung bereits eine funktionierende Web GUI besitzt • …
  • 17. Einstieg in XPages  IBM • Mastering XPages – IBM Press  Matt White • XPages 101 (http://xpages101.net/)  David Leedy • XPages TV (http://xpages.tv/ ) • XPages Cheat Sheet (http://xpagescheatsheet.com/)  Xpages Info • http://xpages.info/XPagesHome.nsf/Home.xsp
  • 23. Virtuelles Filesystem Schliessen schließt nicht das Schliessen schließt nicht das Project im virtuellen Filesystem Project im virtuellen Filesystem
  • 24. Notes Client Speichernutzung optimieren  <NotesProgramDir>frameworkrcpdeployjvm.properties • vmarg.Xmx=-Xmx512m (max. HeapSize ¼ RAM) • vmarg.Xms=-Xms128m (min HeapSize) • Werte müssen durch 4 teilbar sein http://www.xpagedeveloper.com/2012/domino-designer-memory-configurator-is-here
  • 25. Domino Designer individuell anpassen  File  Preferences  Nathan Freeman “Making Domino Designer work like you want” http://ntf.gbs.com/nathan/escape.nsf http://ntf.gbs.com/nathan/escape.nsf /d6plinks/NTFN-8GP6RP /d6plinks/NTFN-8GP6RP
  • 26. WYGINWYS = What You Get Is Not What You See  Was im Designer so aussieht
  • 27. WYGINWYS = What You Get Is Not What You See  Sieht im Browser so aus … http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=XPages%20Help %20Application OpenNTF XPages Help Application: Paul Withers
  • 30. Java ( Beans & Managed-Beans )  Keine Unterschiede im Code  Managed-Beans … • werden deklariert • haben eine Lebensdauer • werden automatisch erzeugt, initialisiert, gelöscht • werden über die Expression Language (EL) bereitgestellt
  • 31. Scoped Variables  Application  The applicationScope duration is the WebModule duration. A web module is started when the first request comes in, and is eventually discarded after a period of inactivity, the default being 30 minutes. Every user of the application can access these variables once they are created, so there is no privacy with these variables. The applicationScope should only be used for data that must be shared among many XPages. Session  With sessionScope variables, the variable lasts for the duration of a server session. This is when the user closes their browser, times out, or when a user logs off. The sessionScope is useful for using you want to store values for the current session only and specific to the current user  View  The viewScope is an XPage extension to JSF and it's variables exist for the duration of the current view i.e. the current page. They are not accessible outside of that view. The viewScope is useful when a value must be stored for the current page and can deleted when the user moves to another page. Request  The requestScope variables last for the duration of the request. This means the variables will last for the duration of a url request from the server. The variable can exist across XPages i.e. if an XPage is requested from another XPage. The requestScope variables are useful for variables which can be deleted straight after the value is submitted to the server. This means that there is not extra memory being used to store variables that are no longer needed.
  • 32. OpenNTF: XPages Extension Library  Macht die Entwicklung von Web Anwendungen noch einfacher und schneller  Integration in Domino Designer  ~ 90 zusätzliche, kostenlose Custom Controls  Open Source  Eigene Erweiterungen durch Extensibility API • http://www.openntf.org/projects/pmt.nsf/ProjectLook up/XPages%20Extension%20Library
  • 34. Q+A • Mail: eknori@eknori.de • Blog: http://www.eknori.de • Sametime: bleedyellow.com • Twitter: eknori

Hinweis der Redaktion

  1. xPages are the hot topic in the IBM Lotus world at the moment. What are they? Why should I choose xPages to develop my database applications? xPages are a Web 2.0 rapid development environment based around JSF and Java technology running on the IBM Lotus Notes and Domino platform. IBM Lotus Notes and Domino has been an established platform for developing applications where customers have been able to utalise industry leading security and workflow capabilities for business applcations. xPages extend these capabilities further by providing a full modern web development platform. We believe that you should consider using xPages technology if you are interested in the following You are looking for a standardised method of quickly developing Web 2.0 applications. You want to write applications quickly for mobile, web browser and lotus notes clients. You want to use Lotus Notes and Domino designer as the single toolkit for developing Lotus Notes Applications You see value in picking pre-built components from sources like openntf to deliver leading edge Web 2.0 applications You want to put together a simple strategy for developing and designing applications that maps to IBM and other leading vendor&apos;s roadmaps You want to build reusable modules and code to share amongst your business applications You want to be able to skin user interface control by using themes to make quick changes to your whole site or application You want to be able to web front end an existing application without disrupting existing functionality (or even changing the current application design&gt; You want to make use of graphics, charts with dojo or pdf / rdbms integration with Java You want to deliver Web 2.0 applications to offline users You want to deliver to different web browsers using out of the box xPages features xPages applications bring full enterprise functionality and power to developers that need to use drag and drop development techniques but require enterprise Java for really serious tasks! So if you want to build a CMS driven website (this one is!), workflow application or web front end for browsers, Notes Clients and mobile devices you must look at xPages!! http://www.bssuk.net/xpages/website.nsf/WhyxPages.xsp