Click here to close now.

Welcome!

Java Authors: Pat Romanski, Plutora Blog, Liz McMillan, Tim Hinds, Mike Kavis

Related Topics: Java, Wireless, SOA & WOA, .NET, Web 2.0, SAP

Java: Article

A Comparison of the Programming APIs Available in SAP Mobile Platform 2.3

Native and JavaScript-based programming APIs for SMP

When Sybase first released the Unwired Platform in 2008, it was intended to be a complete end-to-end development environment for mobile applications.  SUP developers would create the middle tier components (a.k.a. Mobile Business Objects), and the client application executables from a single, integrated Eclipse-based toolset.  There was a "PowerBuilder-like" 4GL screen painter, called the Device Application Designer (or DAD), that compiled down to native Blackberry 5/6 or Windows Mobile 6.5 applications.  (Yes, it's hard to imagine, but there was a time when iOS devices were not allowed to play in the Enterprise Mobile Application playground...)

Several market forces emerged around that time and started to cast doubts on the wisdom of the "complete end-to-end" strategy.  Those were (in no particular order or importance):

  • The release of the iPad, and overall growth of iOS in the enterprise mobile space;
  • The subsequent struggles of RIM and Blackberry to maintain their place in a market they had been dominating;
  • The fact that there were hundreds of thousands of developers already proficient in languages like C#, Java, and Objective-C;
  • The emergence of OData as the primary protocol for data exchange over the web and HTTP;
  • The rise of HTML5 as a cross-platform alternative to native mobile application development;
  • The introduction of the Google Android platform, and it's ascendence in the mobile marketplace;
  • The acquisition of Sybase by SAP, which infused the product with fresh new ideas (and a lot more development resources...)

It became fairly evident that the DAD was very dependent upon market trends and an ever-expanding variety of mobile platforms that were outside SAP's control, and was not the best long-term direction for UI tooling.  As a result, the DAD got sent straight to the bit bucket with the release of SUP 2.0.  The direction then became one of "openness", and embracing alternative development platforms and open industry standards.

This blog post will cover the four major API's that have been released into SMP since then.  We'll cover how to generate them, what their characteristics are, when to use them (and when not to).  The API's we'll cover here are:

  1. The Hybrid App API
  2. The Native Object API
  3. The OData SDK
  4. The HTTP REST API

Note: There is a 4GL programming tool for HTML5 development in SUP/SMP, called the Hybrid App Designer.  I'm not discussing that tool here, because it's integrated with the platform and doesn't require the specific generation of the API libraries.  And developers are hard at work crafting a new HTML5/UI5 programming tool for SMP 3.0 that will deploy hybrid apps into the Kapsel container.  This tool will be called AppBuilder.

Hybrid App API
The Hybrid App API is a set of Javascript libraries that exposes the full functionality of the Hybrid Web Container (HWC).  These can be used to develop HTML5-based apps that run inside the HWC and access the Mobile Business Object (MBO) layer of the SMP server, but with UI tools other than the integrated SMP Hybrid App Designer.  Web apps created with this API will have full access to the SMP messaging stack, including methods such asdoOnlineRequest, and classes such as MessageValueCollection. To deploy these apps as Hybrid Web apps, they must be packaged with the Hybrid App Packaging tool, imported into the SAP Control Center (SCC), and then assigned to registered devices running the container.  These apps use the Message-based Sync (MBS) protocol to communicate with the SMP server.

To generate the Hybrid App API from an MBO diagram, right-click the top level folder in the Workspace Navigator, and select "Generate Hybrid App API...".  Figure 1 below shows where this option is located.

Hybrid App.png

This opens a wizard which has two panels.  The first prompts for the MBOs to include in the generation, and the second allows you to construct the message template for any Server-initiated start point.

Wizard_1.PNG

Once the process completes, the generated Javascript API libraries and the WorkFlowClient.xml file will be found in the folder location specified.  These can then be included in any standard HTML5/Javascript project.  Hybrid web apps that use the "Online Request" operation to request data will require a persistent data connection.  However, they can also work in a "partial" offline mode, in which outbound workflow transactions can be persisted in the Outbox, just like a sent e-mail, until a connection becomes available.

Native Object API
The Object API can be thought of as the "native" equivalent to the Hybrid App API, in that it exposes the MBO object model to the client UI developer, but there are two major differences:

  1. The Native Object API is generated into the native language of the targeted mobile platform.  This list includes Objective-C and Xcode for the iOS platform, Java for both the Android and Blackberry platforms, and C# for the Windows/Windows Mobile platform.  The app developer is responsible for crafting the user interface and business logic layers in the native IDE for that platform.  If you plan on developing multiple versions of a mobile app, one for each popular mobile platform, then it is required to generate the Object API, and develop a separate UI/logic layer, for each of those targeted platforms.
  2. The Native Object API also enables full offline access to the mobile application data, because it uses Replication-based Sync (RBS) when communicating with the SMP server.

To generate the Object API for a specific language and platform, right-click the Mobile Business Objects folder in the Workspace Explorer, and select "Generate Code...".  This opens a wizard with three panels.  The first prompts for a saved configuration profile (if there is one).  The second prompts for the MBOs to include in the generated code.  The final panel is the important one, and is shown below.

Object API 2.png

More Stories By Paul Horan

Paul Horan is a Senior Solution Advisor and Mobility Architect at SAP, and works with the SAP Mobile Platform and SAP Mobile Secure product lines. Paul joined SAP as part of their acquisition of Sybase in June, 2010. Prior to that, Paul worked for Sybase as a technical pre-sales architect supporting PowerBuilder, PowerDesigner, and SQL Anywhere. Paul works out of SAP's Reston VA office. A 1984 graduate of Indiana University, Paul currently resides in Arlington VA.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@ThingsExpo Stories
SYS-CON Events announced today that GENBAND, a leading developer of real time communications software solutions, has been named “Silver Sponsor” of SYS-CON's WebRTC Summit, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. The GENBAND team will be on hand to demonstrate their newest product, Kandy. Kandy is a communications Platform-as-a-Service (PaaS) that enables companies to seamlessly integrate more human communications into their Web and mobile applications - creating more engaging experiences for their customers and boosting collaboration and productiv...
Roberto Medrano, Executive Vice President at SOA Software, had reached 30,000 page views on his home page - http://RobertoMedrano.SYS-CON.com/ - on the SYS-CON family of online magazines, which includes Cloud Computing Journal, Internet of Things Journal, Big Data Journal, and SOA World Magazine. He is a recognized executive in the information technology fields of SOA, internet security, governance, and compliance. He has extensive experience with both start-ups and large companies, having been involved at the beginning of four IT industries: EDA, Open Systems, Computer Security and now SOA.
From telemedicine to smart cars, digital homes and industrial monitoring, the explosive growth of IoT has created exciting new business opportunities for real time calls and messaging. In his session at @ThingsExpo, Ivelin Ivanov, CEO and Co-Founder of Telestax, shared some of the new revenue sources that IoT created for Restcomm – the open source telephony platform from Telestax. Ivelin Ivanov is a technology entrepreneur who founded Mobicents, an Open Source VoIP Platform, to help create, deploy, and manage applications integrating voice, video and data. He is the co-founder of TeleStax, a...
The industrial software market has treated data with the mentality of “collect everything now, worry about how to use it later.” We now find ourselves buried in data, with the pervasive connectivity of the (Industrial) Internet of Things only piling on more numbers. There’s too much data and not enough information. In his session at @ThingsExpo, Bob Gates, Global Marketing Director, GE’s Intelligent Platforms business, to discuss how realizing the power of IoT, software developers are now focused on understanding how industrial data can create intelligence for industrial operations. Imagine ...
Operational Hadoop and the Lambda Architecture for Streaming Data Apache Hadoop is emerging as a distributed platform for handling large and fast incoming streams of data. Predictive maintenance, supply chain optimization, and Internet-of-Things analysis are examples where Hadoop provides the scalable storage, processing, and analytics platform to gain meaningful insights from granular data that is typically only valuable from a large-scale, aggregate view. One architecture useful for capturing and analyzing streaming data is the Lambda Architecture, representing a model of how to analyze rea...
SYS-CON Events announced today that Vitria Technology, Inc. will exhibit at SYS-CON’s @ThingsExpo, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Vitria will showcase the company’s new IoT Analytics Platform through live demonstrations at booth #330. Vitria’s IoT Analytics Platform, fully integrated and powered by an operational intelligence engine, enables customers to rapidly build and operationalize advanced analytics to deliver timely business outcomes for use cases across the industrial, enterprise, and consumer segments.
When it comes to the Internet of Things, hooking up will get you only so far. If you want customers to commit, you need to go beyond simply connecting products. You need to use the devices themselves to transform how you engage with every customer and how you manage the entire product lifecycle. In his session at @ThingsExpo, Sean Lorenz, Technical Product Manager for Xively at LogMeIn, will show how “product relationship management” can help you leverage your connected devices and the data they generate about customer usage and product performance to deliver extremely compelling and reliabl...
The explosion of connected devices / sensors is creating an ever-expanding set of new and valuable data. In parallel the emerging capability of Big Data technologies to store, access, analyze, and react to this data is producing changes in business models under the umbrella of the Internet of Things (IoT). In particular within the Insurance industry, IoT appears positioned to enable deep changes by altering relationships between insurers, distributors, and the insured. In his session at @ThingsExpo, Michael Sick, a Senior Manager and Big Data Architect within Ernst and Young's Financial Servi...
SYS-CON Events announced today that Open Data Centers (ODC), a carrier-neutral colocation provider, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place June 9-11, 2015, at the Javits Center in New York City, NY. Open Data Centers is a carrier-neutral data center operator in New Jersey and New York City offering alternative connectivity options for carriers, service providers and enterprise customers.
There’s Big Data, then there’s really Big Data from the Internet of Things. IoT is evolving to include many data possibilities like new types of event, log and network data. The volumes are enormous, generating tens of billions of logs per day, which raise data challenges. Early IoT deployments are relying heavily on both the cloud and managed service providers to navigate these challenges. Learn about IoT, Big Data and deployments processing massive data volumes from wearables, utilities and other machines.
SYS-CON Events announced today that CodeFutures, a leading supplier of database performance tools, has been named a “Sponsor” of SYS-CON's 16th International Cloud Expo®, which will take place on June 9–11, 2015, at the Javits Center in New York, NY. CodeFutures is an independent software vendor focused on providing tools that deliver database performance tools that increase productivity during database development and increase database performance and scalability during production.
The IoT market is projected to be $1.9 trillion tidal wave that’s bigger than the combined market for smartphones, tablets and PCs. While IoT is widely discussed, what not being talked about are the monetization opportunities that are created from ubiquitous connectivity and the ensuing avalanche of data. While we cannot foresee every service that the IoT will enable, we should future-proof operations by preparing to monetize them with extremely agile systems.
The explosion of connected devices / sensors is creating an ever-expanding set of new and valuable data. In parallel the emerging capability of Big Data technologies to store, access, analyze, and react to this data is producing changes in business models under the umbrella of the Internet of Things (IoT). In particular within the Insurance industry, IoT appears positioned to enable deep changes by altering relationships between insurers, distributors, and the insured. In his session at @ThingsExpo, Michael Sick, a Senior Manager and Big Data Architect within Ernst and Young's Financial Servi...
The major cloud platforms defy a simple, side-by-side analysis. Each of the major IaaS public-cloud platforms offers their own unique strengths and functionality. Options for on-site private cloud are diverse as well, and must be designed and deployed while taking existing legacy architecture and infrastructure into account. Then the reality is that most enterprises are embarking on a hybrid cloud strategy and programs. In this Power Panel at 15th Cloud Expo (http://www.CloudComputingExpo.com), moderated by Ashar Baig, Research Director, Cloud, at Gigaom Research, Nate Gordon, Director of T...
“In the past year we've seen a lot of stabilization of WebRTC. You can now use it in production with a far greater degree of certainty. A lot of the real developments in the past year have been in things like the data channel, which will enable a whole new type of application," explained Peter Dunkley, Technical Director at Acision, in this SYS-CON.tv interview at @ThingsExpo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that Intelligent Systems Services will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Established in 1994, Intelligent Systems Services Inc. is located near Washington, DC, with representatives and partners nationwide. ISS’s well-established track record is based on the continuous pursuit of excellence in designing, implementing and supporting nationwide clients’ mission-critical systems. ISS has completed many successful projects in Healthcare, Commercial, Manufacturing, ...
PubNub on Monday has announced that it is partnering with IBM to bring its sophisticated real-time data streaming and messaging capabilities to Bluemix, IBM’s cloud development platform. “Today’s app and connected devices require an always-on connection, but building a secure, scalable solution from the ground up is time consuming, resource intensive, and error-prone,” said Todd Greene, CEO of PubNub. “PubNub enables web, mobile and IoT developers building apps on IBM Bluemix to quickly add scalable realtime functionality with minimal effort and cost.”
Sensor-enabled things are becoming more commonplace, precursors to a larger and more complex framework that most consider the ultimate promise of the IoT: things connecting, interacting, sharing, storing, and over time perhaps learning and predicting based on habits, behaviors, location, preferences, purchases and more. In his session at @ThingsExpo, Tom Wesselman, Director of Communications Ecosystem Architecture at Plantronics, will examine the still nascent IoT as it is coalescing, including what it is today, what it might ultimately be, the role of wearable tech, and technology gaps stil...
DevOps tends to focus on the relationship between Dev and Ops, putting an emphasis on the ops and application infrastructure. But that’s changing with microservices architectures. In her session at DevOps Summit, Lori MacVittie, Evangelist for F5 Networks, will focus on how microservices are changing the underlying architectures needed to scale, secure and deliver applications based on highly distributed (micro) services and why that means an expansion into “the network” for DevOps.
For years, we’ve relied too heavily on individual network functions or simplistic cloud controllers. However, they are no longer enough for today’s modern cloud data center. Businesses need a comprehensive platform architecture in order to deliver a complete networking suite for IoT environment based on OpenStack. In his session at @ThingsExpo, Dhiraj Sehgal from PLUMgrid will discuss what a holistic networking solution should really entail, and how to build a complete platform that is scalable, secure, agile and automated.