IBM Collaboration Forum ٨.٣.٢٠١١ XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy ٢٠١١ IBM Corporation
Domino-sovelluskehitys Nopea kehitysympäristö (Rapid application development, RAD) Joustava dokumenttivarasto Nopeasti valmis käyttöliittymä Integroitu sähköposti ja offline-käyttö Helppo jakelumalli (NSF) Yhteensopiva Client-vaihtoehdot Notes-client Web-selain Mobile 2011 IBM Corporation 2
Perinteinen Domino/Web-sovellus Helppo ja nopea toteuttaa, mutta... 2011 IBM Corporation 3
Ongelmat Dominon web-kehityksessä Kehitysympäristö suunniteltu Notes-sovelluksille. HTML, CSS ja Javascript -käyttö mahdollista, mutta työlästä. Nykyaikaiset web-controllit puuttuvat. Ei tue tapahtumapohjaista ohjelmointia web-ympäristössä. WebQueryOpen, WebQuerySave, NotesDocumentContext Käyttöliittymä (esim. lomakkeet) vaikuttaa myös tietorakenteeseen. $$-kentät $$-lomakkeet Passthru HTML 2011 IBM Corporation 4
Ratkaisuna Xpages? Web-sovelluskehitysmenetelmä Notes/Domino-sovelluksille. Xpage/design-elementti esiteltiin Notes/Domino-versiossa 8.5. Tuki Notes-clientille versiosta 8.5.1 Perustuu Java-ajoympäristöön. Suunniteltu web 2.0 -tason sovelluksille (XML, REST, SOAP, Dojo, AJAX,...). Laajentaa Sunin Java Server Faces -rakennetta (JSF, JSP) Tukee MVC-arkkitehtuuria (Model-View-Controller) XML-pohjainen source-kieli (XSP Tag markup) Server Side JavaScript (SSJS) Suunniteltu Notes/Domino-kehittäjille: Simple Actions @Formula-tuki Domino -luokat ja -metodit (Java, Lotusscript) 2011 IBM Corporation 5
Xpages-toimintaperiaate Client (Web, Notes, Mobile) HTML,/CSS Domino HTTP Server Domino XSP engine XSP Java Servlets Domino Object Model Data sources 2011 IBM Corporation 6 Documents & views
Miksi Xpages? Yksi teknologia, kaikki ajoympäristöt (Web, Notes client, Mobile) Käyttö perustuu Web-teknologiaan (HTML, CSS) Suunniteltu Notes/Domino-kehittäjille (Simple Actions, Formula, LotusScript, Java) Perustuu laajennettavaan Java-arkkitehtuuriin. Avoimet rajapinnat helpottavat sovellusten integrointia. Erottaa datan käyttöliittymästä (MVC) Integrointi olemassaoleviin sovelluksiin. 2011 IBM Corporation 7
Xpages hyödyt Notes-kehittäjille Olemassaolevan osaamisen hyödyntäminen (SSJS) @Formula-komennot LotusScript -luokat ja -metodit Esim: @Text( [CN], session.getusername()); @Adjust(@Today(), 0, 14, 0, 0, 0, 0); @Uppercase(database.getTitle()); Tietolähteiden linkitys tuo Notes-sovelluksiin relaatiorakenteita. Parantaa koodin tehokkuutta ja uudelleenkäytettävyyttä. Kaikki ominaisuudet ohjelmoitavissa. Custom Controls Xpages Extensible API 2011 IBM Corporation 8
Xpages vrt. perinteinen Domino-kehitys Näkymät Näkymien määrää voidaan vähentää. Paremmat mahdollisuudet räätälöidä ulkoasua. Useita näkymiä (ja myös asiakirjoja) ja osia niistä voidaan näyttää samalla sivulla. Näkymien linkittäminen Lomakkeet Lomakkeita käytetään vain tiedon tallennukseen, ei enää esittämiseen. Ei enää WebQueryOpen ja WebQuerySave -agentteja. Dojo RTF-editori Sovelluksen ulkoasu määriteltävissä teeman avulla. Automaattinen kielituki ilman koodausta. Parempi suorituskyky. 2011 IBM Corporation 9
Xpages käyttö Domino Designerin Design-elementti Xpage Muokkaus WYSIWYG tai XSP lähdekoodina Sisältää controlleja, mm. kentät, otsikot, painikkeet. Paljon out of the box -toimintoja, mm. Type-ahead Kenttätarkistukset Sivun osittainen päivitys (AJAX) Tiedostojen lataus (upload & download controls) Dojo RTF-editori 1) Core Controls 2) Container Controls 3) Custom Controls 4) Xpages extensibility API (8.5.2) 2011 IBM Corporation 10
Xpages Extension Library Joukko lisäelementtejä Xpages-sivuille (controls) OneUI Layout Dojo Controls, New View Control Outlines/Menus, Interactive Views Extended editing context, Calendar Views Value/Name Pickers Lotus Sametime/Connections -integraatio Toteutettu Xpages extensibility API:n avulla. Notes/Domino-versiossa > 8.5.2 Client, Server & Mobile Ladattavissa osoitteesta extlib.openntf.org OpenSource 2011 IBM Corporation 11
Xpages Extension Library 2011 IBM Corporation 12
Xpages Extension Library ٢٠١١ IBM Corporation ١٣
Xpages-teemat (Themes) Määrittää Xpages-käyttöliittymän ulkoasun ja logiikan. Määrittely XML-kielellä. Perustuen CSS-luokkiin ja -määrityksiin. 2011 IBM Corporation 14
OneUI teema Valmis käyttöliittymäteema Domino-sovelluksille. Ladattavissa osoitteesta OpenNTF.org Sisältyy myös Xpages Extension Libraryyn. 2011 IBM Corporation 15
2011 IBM Corporation 16 Xpages Demo
Xpages -yhteenveto Web 2.0 -sovellusten toteutukseen. Avoin ja lähes rajattomasti laajennettavissa. Erottaa käyttöliittymän koodaamisen muusta sovelluslogiikasta. Yksi ohjelma, kaikki toimintaympäristöt (Notes, web, mobile) Ei vaadi Java-osaamista. Hyödynnä olemassaolevaa osaamista (formulat, lotusscript) Tee Notes-sovelluksista Web-sovelluksia ja päinvastoin. Lisää sovelluksista uusia kieliversioita. Xpages Extension Library Toteuta näyttävästi, nopeasti ja helposti. 2011 IBM Corporation 17
Lisätietoja... IBM developerworks http://www.ibm.com/developerworks/lotus/ Lotus Domino Designer wiki http://www.lotus.com/ldd/ddwiki.nsf OpenNTF http://www.openntf.org Xpages Extension Library http://extlib.openntf.org Xpages blog http://xpagesblog.com Lotus Education Xpages training cources http://www.ibm.com/training Xpages.info http://xpages.info 2011 IBM Corporation 18