Click here to close now.




















Welcome!

Java IoT Authors: Esmeralda Swartz, Jason Bloomberg, Elizabeth White, Pat Romanski, Liz McMillan

Related Topics: Java IoT, Mobile IoT, Microservices Expo, Microsoft Cloud, Agile Computing, SAP HANA Cloud

Java IoT: 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
With the proliferation of connected devices underpinning new Internet of Things systems, Brandon Schulz, Director of Luxoft IoT – Retail, will be looking at the transformation of the retail customer experience in brick and mortar stores in his session at @ThingsExpo. Questions he will address include: Will beacons drop to the wayside like QR codes, or be a proximity-based profit driver? How will the customer experience change in stores of all types when everything can be instrumented and analyzed? As an area of investment, how might a retail company move towards an innovation methodolo...
Contrary to mainstream media attention, the multiple possibilities of how consumer IoT will transform our everyday lives aren’t the only angle of this headline-gaining trend. There’s a huge opportunity for “industrial IoT” and “Smart Cities” to impact the world in the same capacity – especially during critical situations. For example, a community water dam that needs to release water can leverage embedded critical communications logic to alert the appropriate individuals, on the right device, as soon as they are needed to take action.
Manufacturing connected IoT versions of traditional products requires more than multiple deep technology skills. It also requires a shift in mindset, to realize that connected, sensor-enabled “things” act more like services than what we usually think of as products. In his session at @ThingsExpo, David Friedman, CEO and co-founder of Ayla Networks, will discuss how when sensors start generating detailed real-world data about products and how they’re being used, smart manufacturers can use the data to create additional revenue streams, such as improved warranties or premium features. Or slash...
WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications. In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, will introduce the technologies required for implementing these ideas and some early experiments performed in the Kurento open source software community in areas ...
SYS-CON Events announced today that HPM Networks will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. For 20 years, HPM Networks has been integrating technology solutions that solve complex business challenges. HPM Networks has designed solutions for both SMB and enterprise customers throughout the San Francisco Bay Area.
While many app developers are comfortable building apps for the smartphone, there is a whole new world out there. In his session at @ThingsExpo, Narayan Sainaney, Co-founder and CTO of Mojio, will discuss how the business case for connected car apps is growing and, with open platform companies having already done the heavy lifting, there really is no barrier to entry.
All major researchers estimate there will be tens of billions devices - computers, smartphones, tablets, and sensors - connected to the Internet by 2020. This number will continue to grow at a rapid pace for the next several decades. With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo, November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be.
As more intelligent IoT applications shift into gear, they’re merging into the ever-increasing traffic flow of the Internet. It won’t be long before we experience bottlenecks, as IoT traffic peaks during rush hours. Organizations that are unprepared will find themselves by the side of the road unable to cross back into the fast lane. As billions of new devices begin to communicate and exchange data – will your infrastructure be scalable enough to handle this new interconnected world?
The Internet of Things is in the early stages of mainstream deployment but it promises to unlock value and rapidly transform how organizations manage, operationalize, and monetize their assets. IoT is a complex structure of hardware, sensors, applications, analytics and devices that need to be able to communicate geographically and across all functions. Once the data is collected from numerous endpoints, the challenge then becomes converting it into actionable insight.
With the Apple Watch making its way onto wrists all over the world, it’s only a matter of time before it becomes a staple in the workplace. In fact, Forrester reported that 68 percent of technology and business decision-makers characterize wearables as a top priority for 2015. Recognizing their business value early on, FinancialForce.com was the first to bring ERP to wearables, helping streamline communication across front and back office functions. In his session at @ThingsExpo, Kevin Roberts, GM of Platform at FinancialForce.com, will discuss the value of business applications on wearable ...
SYS-CON Events announced today that IceWarp will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. IceWarp, the leader of cloud and on-premise messaging, delivers secured email, chat, documents, conferencing and collaboration to today's mobile workforce, all in one unified interface
SYS-CON Events announced today that Micron Technology, Inc., a global leader in advanced semiconductor systems, will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Micron’s broad portfolio of high-performance memory technologies – including DRAM, NAND and NOR Flash – is the basis for solid state drives, modules, multichip packages and other system solutions. Backed by more than 35 years of technology leadership, Micron's memory solutions enable the world's most innovative computing, consumer,...
As more and more data is generated from a variety of connected devices, the need to get insights from this data and predict future behavior and trends is increasingly essential for businesses. Real-time stream processing is needed in a variety of different industries such as Manufacturing, Oil and Gas, Automobile, Finance, Online Retail, Smart Grids, and Healthcare. Azure Stream Analytics is a fully managed distributed stream computation service that provides low latency, scalable processing of streaming data in the cloud with an enterprise grade SLA. It features built-in integration with Azur...
SYS-CON Events announced today the Containers & Microservices Bootcamp, being held November 3-4, 2015, in conjunction with 17th Cloud Expo, @ThingsExpo, and @DevOpsSummit at the Santa Clara Convention Center in Santa Clara, CA. This is your chance to get started with the latest technology in the industry. Combined with real-world scenarios and use cases, the Containers and Microservices Bootcamp, led by Janakiram MSV, a Microsoft Regional Director, will include presentations as well as hands-on demos and comprehensive walkthroughs.
17th Cloud Expo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterprises are using some form of XaaS – software, platform, and infrastructure as a service.
SYS-CON Events announced today that the "Second Containers & Microservices Expo" will take place November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Containers and microservices have become topics of intense interest throughout the cloud developer and enterprise IT communities.
Akana has announced the availability of the new Akana Healthcare Solution. The API-driven solution helps healthcare organizations accelerate their transition to being secure, digitally interoperable businesses. It leverages the Health Level Seven International Fast Healthcare Interoperability Resources (HL7 FHIR) standard to enable broader business use of medical data. Akana developed the Healthcare Solution in response to healthcare businesses that want to increase electronic, multi-device access to health records while reducing operating costs and complying with government regulations.
Containers are not new, but renewed commitments to performance, flexibility, and agility have propelled them to the top of the agenda today. By working without the need for virtualization and its overhead, containers are seen as the perfect way to deploy apps and services across multiple clouds. Containers can handle anything from file types to operating systems and services, including microservices. What are microservices? Unlike what the name implies, microservices are not necessarily small, but are focused on specific tasks. The ability for developers to deploy multiple containers – thous...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo in Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal an...
Consumer IoT applications provide data about the user that just doesn’t exist in traditional PC or mobile web applications. This rich data, or “context,” enables the highly personalized consumer experiences that characterize many consumer IoT apps. This same data is also providing brands with unprecedented insight into how their connected products are being used, while, at the same time, powering highly targeted engagement and marketing opportunities. In his session at @ThingsExpo, Nathan Treloar, President and COO of Bebaio, will explore examples of brands transforming their businesses by t...