Connect ed2014 ad501_ibm worklight for ibm domino developers

Embed Size (px)

Text of Connect ed2014 ad501_ibm worklight for ibm domino developers

  1. 1. 2014 IBM Corporation AD501: IBM Worklight for IBM Domino Developers Mat Newman, IBM, @MatNewman
  2. 2. 22 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 discretion Performance 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. Please Note
  3. 3. 3 Session 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.
  4. 4. 4 What we'll cover What is the Domino Data Service (DDS) How to enable DDS How to use it
  5. 5. 55 What is Domino Data Service
  6. 6. 6 Domino 9 = XPages Extension Library + Mobile Controls Out-Of-TheBox Mobile app toolkit Awesome Tutorial By Paul Hannan: http://tinyurl.com/2014AD50101 Develop a mobile application in 5 Minutes
  7. 7. 7 Yes, Mobile applications IN 5 MINUTES!
  8. 8. 8 DEMO
  9. 9. 9 Ever used a JSONFORMAT url in Domino? /database.nsf/viewname?ReadViewEntries&outputformat=json Eg: http://lotusphere.turtleweb.com/sphere2014.nsf/vwSessionsID?ReadViewEntries&outputformat=json
  10. 10. 10 Domino Data Service Rest API that exposes data in a Domino database Uses internet standard protocols Build NATIVE applications
  11. 11. 11 Yes, NATIVE Applications NOT just mobile web-pages!
  12. 12. 12 DDS Exposes JSON in ANY enabled Notes application * both VIEWS and DOCUMENTS *
  13. 13. 13 DDS Object URL's FilePath/Databasename.nsf The base notes application URL FilePath/Databasename.nsf/api/data The api path when notes application is enabled for DDS FilePath/Databasename.nsf/api/data/collections The path to access Views FilePath/Databasename.nsf/api/data/documents The path to access Documents (Notes/Records)
  14. 14. 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" } ]
  15. 15. 15 DDS Working with Views cont Remember the back-end collection is a DOMINO view As a Domino Developer, you can use all the view commands you are used to: eg ?Search ?Start=1&count=50 FilePath/Databasename.nsf/api/data/collections/name/ViewName?Command No different to calling a view url using standard HTTP
  16. 16. 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 FilePath/Databasename.nsf/api/data/documents/unid/88B0527841D435A648257BF2002DFE4B
  17. 17. 17 DDS Working with Documents - Operations Get Patch Put Delete 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 FilePath/Databasename.nsf/api/data/documents/unid/88B0527841D435A648257BF2002DFE4B
  18. 18. 1818 How to enable Domino Data Service
  19. 19. 19 Enabling DDS - Components DDS 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. 20. 20 Ensure your Domino Server is using Internet Sites More configuration choices and features than traditional Web Server Configurations Been around for a while... Enabled per server Site documents can be multi-server
  21. 21. 21 Configuring the web site document is EASY Web Site Document Domino Access Services Enabled Services: Data Restart HTTP task
  22. 22. 22 Enabling the Database for DDS Open the Database Properties Advanced Tab Allow Domino Data Service: Never (default) Views Only Views and documents
  23. 23. 23 You're Ready now
  24. 24. 2424 DDS How do you use it?
  25. 25. 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 DDS Install IBM Worklight Create a project Connect it to your NOTES database
  26. 26. 26 Yes, I said install IBM WORKLIGHT
  27. 27. 27 IBM Worklight Installation Install Java JDK Install Android SDK Install Eclipse Juno (4.1) Use the Eclipse market to install: IBM Worklight Developer Addition (help Eclipse Marketplace...)
  28. 28. 28 Install Java JDK Download the JDK http://tinyurl.com/2014AD50102 Run the Install
  29. 29. 29 Install Android SDK Normal Android Installation Download and installation instructions: http://tinyurl.com/2014AD50103
  30. 30. 30 Install Eclipse Juno (4.1) http://tinyurl.com/2014AD50104 Eclipse IDE for Java EE Developers Extract the zip file... Run Eclipse.exe
  31. 31. 31 Use the Eclipse market to install Worklight IBM Worklight Developer Addition (help Eclipse Marketplace...)
  32. 32. 3232 Building the Worklight Project
  33. 33. 33 Creating the Project
  34. 34. 34 Give the project a name and type
  35. 35. 35 Add the dojo tolkit
  36. 36. 36 Design the Mobile Application
  37. 37. 37 Add a Worklight Adapter
  38. 38. 38 The Adapter Type is HTTP
  39. 39. 39 The Adapter Domain is the Base URL!
  40. 40. 40 Add procedures to the Adapter
  41. 41. 41 Add functions to call data using DDS
  42. 42. 42 Programming guides for DDS DDS User Guide and Reference http://tinyurl.com/2014AD50105 DDS 9 Reference Wiki http://tinyurl.com/2014AD50106
  43. 43. 43 What the URL actually returns
  44. 44. 44 Deploy the adapter
  45. 45. 45 Run the project
  46. 46. 46 YOURE MOBILE
  47. 47. 4747 Engage Online SocialBiz User Group socialbizug.org Join the epicenter of Notes and Collaboration user groups Follow us on Twitter @IBMConnect and @IBMSocialBiz LinkedIn http://bit.ly/SBComm Participate in the IBM Social Business group on LinkedIn: Facebook https://www.facebook.com/IBMSocialBiz Like IBM Social Business on Facebook Social Business Insights blog ibm.com/blogs/socialbusiness Read and engage with our bloggers Engage Online
  48. 48. 48 Access Connect Online to complete your session surveys using any: Web or mobile browser Connect Online kiosk onsite 48
  49. 49. 4949 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.shtml Other company, product, or service names may be trademarks or service marks of others. 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 in