IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers

Embed Size (px)

DESCRIPTION

IBM Domino 9 easily exposes the Domino Data Service (DDS) to enable you to access data in IBM Notes Databases utilising REST APIs. But how do you get started building native mobile applications? With IBM Worklight, and DDS! We will demonstrate how to install, configure and then build your first mobile application.

Text of IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers

  • 1.AD501: IBM Worklight for IBM Domino Developers Mat Newman, IBM, @MatNewman 2014 IBM Corporation

2. Please Note IBMs statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBMs sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretionPerformance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the users job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.2 3. Session DescriptionIBM Domino 9 easily exposes the Domino Data Service (DDS) to enable you to access data in IBM Notes Databases utilising REST APIs. But how do you get started building native mobile applications? With IBM Worklight, and DDS! We will demonstrate how to install, configure and then build your first mobile application.3 4. What we'll cover What is the Domino Data Service (DDS)How to enable DDSHow to use it4 5. What is Domino Data Service5 6. Domino 9 = XPages Extension Library + Mobile Controls Out-Of-TheBox Mobile app toolkitAwesome Tutorial By Paul Hannan: 6http://tinyurl.com/2014AD50101Develop a mobile application in 5 Minutes 7. Yes, Mobile applications IN 5 MINUTES!7 8. DEMO8 9. Ever used a JSONFORMAT url in Domino? /database.nsf/viewname?ReadViewEntries&outputformat=jsonEg: http://lotusphere.turtleweb.com/sphere2014.nsf/vwSessionsID?ReadViewEntries&outputformat=json9 10. Domino Data Service 10Rest API that exposes data in a Domino database Uses internet standard protocols Build NATIVE applications 11. Yes, NATIVE Applications NOT just mobile web-pages!11 12. DDS Exposes JSON in ANY enabled Notes application * both VIEWS and DOCUMENTS *12 13. DDS Object URL's FilePath/Databasename.nsf FilePath/Databasename.nsf/api/data The path to access ViewsFilePath/Databasename.nsf/api/data/documents 13The api path when notes application is enabled for DDSFilePath/Databasename.nsf/api/data/collections The base notes application URLThe path to access Documents (Notes/Records) 14. DDS Working with Views FilePath/Databasename.nsf/api/data/collections The path to access Views If called will return a list of views Can now navigate those objects by ID or Name [ {"@title":"($All)", "@folder":false, "@private":false, "@modified":"2013-09-27T02:17:03Z", "@unid":"88B0527841D435A648257BF2002DFE4B", "@href":"http://domain.com:80/folderpath/filename.nsf/api/data/collections/unid/88B0527841D435A648257BF2002DFE4B" }, { "@title":"By Category", "@folder":false, "@private":false, "@modified":"2013-09-27T01:39:22Z", "@unid":"BA68A00AE98C6FB148257BF30006AA52", "@href":"http://domain.com:80/folderpath/filename.nsf/api/data/collections/unid/BA68A00AE98C6FB148257BF30006AA52" } ]14 15. DDS Working with Views cont Remember the back-end collection is a DOMINO viewAs a Domino Developer, you can use all the view commands you are used to: eg FilePath/Databasename.nsf/api/data/collections/name/ViewName?Command 15?Search ?Start=1&count=50No different to calling a view url using standard HTTP 16. DDS Working with Documents FilePath/Databasename.nsf/api/data/documents Lists all the documents in the database Includes all available item/note/field contents (even rich text) Get a specific document easily by referring to it's UNID 16FilePath/Databasename.nsf/api/data/documents/unid/88B0527841D435A648257BF2002DFE4B 17. DDS Working with Documents - Operations GetPatchPutDeleteFilePath/Databasename.nsf/api/data/documentsLists all the documents in the database Includes all available item/note/field contents (even rich text) Get a specific document easily by referring to it's UNID 17FilePath/Databasename.nsf/api/data/documents/unid/88B0527841D435A648257BF2002DFE4B 18. How to enable Domino Data Service18 19. Enabling DDS - Components 19DDS Extended Service Per Domino Site Internet Configuration Documents need to be in use Per Database Each Database is enabled individually Access Choices: Views Only Views and Documents 20. Ensure your Domino Server is using Internet Sites More configuration choices and features than traditional Web Server ConfigurationsBeen around for a while...Enabled per serverSite documents can be multi-server20 21. Configuring the web site document is EASY Web Site DocumentDomino Access Services21Enabled Services: Data Restart HTTP task 22. Enabling the Database for DDS Open the Database PropertiesAdvanced Tab22Allow Domino Data Service: Never (default) Views Only Views and documents 23. You're Ready now23 24. DDS How do you use it?24 25. How can we use DDS to build a Native Application New Notes Database: Create a Notes database Build some features Enable DDS Existing Notes Database: No design changes required! Enable DDSInstall IBM WorklightCreate a projectConnect it to your NOTES database25 26. Yes, I said install IBM WORKLIGHT26 27. IBM Worklight Installation 27Install Java JDK Install Android SDK Install Eclipse Juno (4.1) Use the Eclipse market to install: IBM Worklight Developer Addition (help Eclipse Marketplace...) 28. Install Java JDK Download the JDK 28http://tinyurl.com/2014AD50102Run the Install 29. Install Android SDK Normal Android InstallationDownload and installation instructions: 29http://tinyurl.com/2014AD50103 30. Install Eclipse Juno (4.1) http://tinyurl.com/2014AD50104Eclipse IDE for Java EE DevelopersExtract the zip file...Run Eclipse.exe30 31. Use the Eclipse market to install Worklight IBM Worklight Developer Addition(help Eclipse Marketplace...)31 32. Building the Worklight Project32 33. Creating the Project33 34. Give the project a name and type34 35. Add the dojo tolkit35 36. Design the Mobile Application36 37. Add a Worklight Adapter37 38. The Adapter Type is HTTP38 39. The Adapter Domain is the Base URL!39 40. Add procedures to the Adapter40 41. Add functions to call data using DDS41 42. Programming guides for DDS DDS User Guide and Reference DDS 9 Reference Wiki 42http://tinyurl.com/2014AD50105http://tinyurl.com/2014AD50106 43. What the URL actually returns43 44. Deploy the adapter44 45. Run the project45 46. YOURE MOBILE46 47. Engage Online SocialBiz User Group socialbizug.org Join the epicenter of Notes and Collaboration user groups Follow us on Twitter Engage @IBMConnect and @IBMSocialBizOnlineLinkedIn http://bit.ly/SBComm Participate in the IBM Social Business group on LinkedIn:Facebook https://www.facebook.com/IBMSocialBiz Like IBM Social Business on FacebookSocial Business Insights blog ibm.com/blogs/socialbusiness Read and engage with our bloggers47 48. Access Connect Online to complete your session surveys using any: Web or mobile browser Connect Online kiosk onsite48 49. Acknowledgements and Disclaimers Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. Copyright IBM Corporation 2014. All rights reserved. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo, ibm.com, are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol ( or ), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at Copyright and trademark information at www.ibm.com/legal/copytrade.shtmlOther company, product, or service names may be trademarks or service marks of others.49