Develop Mobile Applications using Domino 7 Web Services and MDS 4.1
Paul SteelResearch In MotionRegional Technical Manager
• BlackBerry is a complete solution and application platform, composed of multiple components and services:– Wireless Devices– Simplified Wireless Connectivity to the Enterprise and
Internet– “Always-On” Push Technology and Network-
Independence– Security, Management and Application Provisioning– Wireless Application Development Platform
BlackBerry Wireless Solution Overview
BlackBerry Enterprise SolutionOverview
GPRS
Enterprise Network
Application & Web Servers
Email Server
CDMA
iDEN
BlackBerry Enterprise
Server
Connectivity Security Management Extensibility & ROI
HTTP(S)
WiFi
1. Browser / Server Applications– Securely access internal web sites– Use existing web pages or design new optimized web
pages for BlackBerry devices– Leverage push in custom server-side applications
2. Custom Client / Server Applications: Java ME– Develop custom Java application for the device– Communicate with customized server-side applications
on the intranet– Leverage push in custom server-side applications
3. MDS v4.1: RAD Tools for Mobile Web Services– BlackBerry Mobile Data System v4.1 and MDS Studio– Drag and drop developer tools for building rich-client
applications (without writing any custom code)– Connect to enterprise Web Services (SOAP/XML)
The Application Medium: Application Development Options for BlackBerry
• Simplified Wireless Connectivity to Intranet: Like a permanent VPN!
Custom Application Development:(1) BlackBerry Browser
Web / App Server
BlackBerry Browser
HTTP(S)
3DES EncryptionPush & Pull of Data
Network-independent
BlackBerry Enterprise Server with MDS
• Keys To Success:- Optimizing content for small form factor- Leveraging push to proactively distribute content to mobile
professionals
HTML/WML
• Simplified Wireless Connectivity to Intranet: Like a permanent VPN!
• Key Advantages Over Custom Java Applications:- Simplified Client Development: Visual drag ‘n’ drop approach- Simplified Server-Side Development: Support for enterprise Web Services,
including Web Services Eventing for content push- NOTE: Requires some experience with Web Services
Web / App Server
Custom MDS Application for
BlackBerry
HTTP/SOAP
3DES EncryptionPush & Pull of Data
Network-independent
BlackBerry Enterprise Server with MDS
WSDL/XML
Custom Application Development:(3) Custom Applications with MDS Studio
BlackBerry MDS v4.1 – System Components
• BlackBerry MDS Studio– A powerful visual tool for assembling BlackBerry MDS Applications– Drag-and-drop component based methodology
• BlackBerry MDS Runtime – BlackBerry device software component– Provides runtime services to BlackBerry MDS Applications – Manages the on-device application lifecycle, including deployment,
execution and upgrade
• BlackBerry MDS Services– Resides on the BlackBerry Enterprise Server™– Handles interaction between BlackBerry MDS Applications and
back-end enterprise applications and systems– Centrally manages BlackBerry MDS Applications and devices
BlackBerry MDS v4.1 – Architecture
SOAPCRM
Enterprise Applications
ERP
Web Servicesdescribed by WSDL
CustomBES with MDS Services
MDS Studio ApplicationRepository
BlackBerry MDS Studio
(IDE)
• Visa• Amex
BlackBerry MDS Application
BlackBerry Device with
MDS Runtime
HTTP
App / Web Server
BUILD & DEPLOY
(Java Apps & Browser)
Rapid Development of Rich-Client Enterprise Applications for BlackBerry
So What Are Web Services All About?
Why Did RIM Focus on Web Services for this New Development Platform?
A Closer Look at Web Services
• Evolving industry standard for a platform-independent API layer, to allow applications to expose services and data to other applications
• So what does THAT mean?– A standardized, XML-based language and protocol stack for
exposing methods and data from your applications– No need for the requesting application to know the detailed APIs of
the underlying system– Ability to programmatically “discover” which methods and data types
are available via the Web Services Descriptor Language (WSDL)• Input methods + parameters || Output methods + return types
– Underlying applications can be .NET, Java, Domino, or any other language / protocol
A Closer Look at Web Services
• Re-use, not re-invent– Goal of web services is to provide improved interfaces into existing
applications, making them easier to access and extend
• Example: SAP – Before Web Services– Thousands (millions?) of Java and ABAP APIs to access its data
and back-end applications– Developers had to become very specialized in these APIs– No ability to write .NET or other applications to communicate with
SAP system
Exercise #1: Building a Web Service in Domino
1. In Lotus Designer, open the Help! application.2. Go to the Web Services Panel under Shared
Code.3. Create a New Web Service – unique name.4. Copy the constants into the service.5. Copy the classes and methods into the service.6. Save.7. Test the WSDL from inside the browser.
Rapid Development of Rich-Client Enterprise Applications for BlackBerry
Creating rich-client applications using BlackBerry MDS Studio
BlackBerry MDS Studio: Key Concepts
• No programming/coding required
• Applications are “assembled” from components
– UI Components– Data Components– Message Components
• Visual “drag and drop”approach
• Component relationships/ links create workflow
– Optional JavaScript™
BlackBerry MDS Studio: Development Models
There are three distinct approaches available:• “Quick Start” approach
– A fully-automated approach starting with the WSDL which includes generation of all application screen, data and message components
• “Bottom-up” approach: – Starts from the WSDL and automatically creates data and message
components and one initial main screen• “Top-down” approach
– Starts from the front-end, developer creates screens, data, message components - and then selects a data source to manually bind application operations
Choice of approach depends on circumstances and the level of experience of the designer.
Exercise #2: Creating the MDS 4.1 Studio App
1. Open up MDS Studio 4.1.2. Launch the Quick Start icon (wand) to create the
new application.3. Enter a unique name of the project.4. Copy the URL of the WSDL from the browser5. Create the application and review.6. Push application to device.7. Test application on device.
BlackBerry MDS: Optimized for Wireless
• Optimized data transmission– Minimize network traffic and costs– Responsive application experience– Maximize battery life
• Small application footprint– Maximize device storage available for user data
• Support for off-line operation– Local data storage and local processing capabilities
• Support for push delivery of application data– All the great characteristics of BlackBerry available to custom
enterprise applications• Centrally managed
– BlackBerry MDS Services Administration Console…
Rapid Development of Rich-Client Enterprise Applications for BlackBerry
Demonstrations
MDS Services Administration Console
• The admin console displays the status of BlackBerry MDS Services, including:
– Overall status– Messages status– Devices status– Applications status– Connection services
status
• Diagnose:– View server status– View and/or purge pending messages – View message traffic for a particular
device and/or applications– View and search logs
MDS Services Administration Console
• Manage applications and devices– View applications that have been
published by MDS Studio to the Application Registry
– View applications that have been installed on devices
– Install, upgrade or remove an application from a single device or group of devices
– Configure non-default device policies
MDS Services Administration Console
• Configure MDS Services– Add, remove or disable MDS
Connection services– Configure accounts for administering
MDS Services– Configure certificates used to verify
signed applications– Block notifications from specified hosts– View general MDS Services settings
MDS Services Administration Console
Exercise #3: Configuring the Application and Redeploy
1. In MDS Studio 4.1, open up application and modify fields and layout.
2. Preview your changes through the on screen preview.
3. Save and Publish.4. Note the version number.5. Test again on the handheld.
BlackBerry for Lotus Domino
Thank you for attending! Be sure to join us for other BlackBerry sessions and events happening at Lotusphere:• BlackBerry breakout session – Wednesday, 10am, Swan Ballroom• BlackBerry VIP Customer Reception – Tuesday night, 6pm, Grand Harbor South (Yacht & Beach Hotel)
For more resources, please visit:www.blackberry.com/go/dominowww.blackberry.com/go/DominoResources