IP Library Granted Patent US 9,239,744
Granted Patent B2
US 9,239,744 · App. 13/693,807 · Granted Jan 19, 2016

Hybrid objects

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,239,744
App. No.
13/693,807
Granted
Jan 19, 2016
Kind
B2
Abstract

Embodiments illustrated and described herein provide systems, methods, and software of a system platform that enables apps, applications, processes and the like with functionality and data present in an enterprise-class computing system, such as an Enterprise Resource Planning system. Some such embodiments include a hybrid object that exists in part within a web infrastructure and in part within the enterprise-class computing system. The portion of the hybrid object in the web infrastructure exposes resources of the enterprise-class computing system outside of the enterprise-class computing system to be accessible by apps and other data processing assets. These and other embodiments are illustrated and described herein.

Claims (58)

1. A method comprising:

receiving, via a network, a hybrid object invocation from a client app, the invoked hybrid object including a delivery object portion located within a web platform and a backend system object portion located within a backend computing system; and

on a processor of a computing device on which the web platform operates at least in part, executing the delivery object portion of the invoked hybrid object, the executing of the delivery object portion including:

generating a first intra-object message encoded at least in part according to a protocol of the backend computing system, the generating of the first intra-object message including:

selecting a mapper object group based on the client app from which the hybrid object invocation was received;

selecting a mapper object from the selected mapper object group based on a type of data to be communicated to the backend system;

processing the hybrid object invocation with the selected mapper object to transform at least a portion of the received hybrid object invocation into a form compatible with a connector object configured to communicate via one of a plurality of backend system interfaces, the connector object identified based on the type of data to be communicated to the backend system;

processing the hybrid object invocation with the identified connector object to transform the hybrid object invocation from the form received from the selected mapper object into the first intra-object message of a form compatible with the backend system interface with which the connector object is configured to communicate;

transmitting, by the connector object via the network, the first intra-object message to the backend computing system with data indicating the first intra-object message is for the backend system object portion;

receiving a second intra-object message from the backend system object portion via the network and in response to the transmitting; and

providing, via the network, a response to the hybrid object invocation, the response based at least in part on the received second intra-object message.

2. The method of claim 1 , wherein receiving the hybrid object invocation includes receiving a hybrid object method call, the logic of the called hybrid object method being executable within the backend computing system.

3. The method of claim 1 , wherein:

receiving the hybrid object invocation includes receiving a hybrid object method call of a hybrid object method present-in-part in the delivery object portion as a hybrid object method stub to:

receive the hybrid object method call; and

invoke the executing of the hybrid object method stub; and

the hybrid object method present-in-part in the backend system object portion and includes a data processing functional core of the hybrid object method.

4. The method of claim 1 , wherein the protocol of the backend computing system is a standards-based, lightweight data interchange format protocol.

5. The method of claim 1 , wherein transmitting the first intra-object message to the backend computing system includes transmitting the first intra-object message to the backend computing system via a web server process that receives the first intra-object message and retransmits at least a portion of the first intra-object message to the backend system.

6. The method of claim 5 , wherein generating the first intra-object message encoded at least in part according to the protocol of the backend computing system includes:

encoding at least the portion of the first intra-object message to be retransmitted by the web server process according to the protocol of the backend computing system, wherein the web server process does not need to perform a translation function on the portion of the first intra-object message before retransmitting the first intra-object message to the backend system.

7. A method comprising:

receiving, via a network by a backend system object portion located within a backend computing system, a first intra-object message, the first intra-object message having originated with a delivery object portion located within a web platform, the backend system object portion and the delivery object portion forming an entirety of an object;

executing an object method identified in the intra-object message and present-in-part in the backend system object portion to obtain a result;

generating a second intra-object message based at least in part on result from execution of the object method;

transmitting, via the network, the second intra-object message to the delivery object portion; and

wherein:

the object method of the object exists in part in both the backend system object portion and the delivery object portion;

the delivery object portion of the object method includes an object method stub to:

receive an object method call via a network from an app; and

invoke the executing of the object method stub to cause the call of the object method to be transmitted to the backend system object portion in the first intra-object message including generation of the first intra-object message, the generating of the first intra-object message including:

selecting a mapper object group based on the app from which the object method call was received;

selecting a mapper object from the selected mapper object group based on a type of data to be communicated to the backend system;

processing the object method call with the selected mapper object to transform at least a portion of the received object method call into a form compatible with a connector object configured to communicate via one of a plurality of backend system interfaces, the connector object identified based on the type of data to be communicated to the backend system;

processing the object method call with the identified connector object to transform the object method call from the form received from the selected mapper object into the first intra-object message of a form compatible with the backend system interface with which the connector object is configured to communicate; and

transmitting, by the connector object, the call of the object method to the interface of the backend system.

8. The method of claim 7 , wherein the generating of the second intra-object message includes encoding at least a portion of the second intra-object message according to a protocol of the web platform on which the delivery object portion executes.

9. The method of claim 8 , wherein transmitting the second intra-object message to the delivery object portion includes transmitting the second intra-object message to the delivery object portion via a connector object present within the web framework, the connector object tailored to communicate according to a communication protocol of the backend computing system.

10. A non-transitory machine-readable storage medium, with instructions stored thereon which when executed by at least one processor of at least one computing device, cause the at least one computing device to:

receive, via a network, a hybrid object invocation from a client app, the invoked hybrid object including a delivery object portion located within a web platform and a backend system object portion located within a backend computing system; and

on a processor of a computing device on which the web platform operates at least in part, execute the delivery object portion of the invoked hybrid object, the executing of the delivery object portion including:

generating a first intra-object message encoded at least in part according to a protocol of the backend computing system, the generating of the first intra-object message including:

selecting a mapper object group based on the client app from which the hybrid object invocation was received;

selecting a mapper object from the selected mapper object group based on a type of data to be communicated to the backend system;

processing the hybrid object invocation with the selected mapper object to transform at least a portion of the received hybrid object invocation into a form compatible with a connector object configured to communicate via one of a plurality of backend system interfaces, the connector object identified based on the type of data to be communicated to the backend system;

processing the hybrid object invocation with the identified connector object to transform the hybrid object invocation from the form received from the selected mapper object into the first intra-object message of a form compatible with the backend system interface with which the connector object is configured to communicate;

transmitting, by the connector object via the network, the first intra-object message to the backend computing system with data indicating the first intra-object message is for the backend system object portion;

receiving a second intra-object message from the backend system object portion via the network and in response to the transmitting; and

providing, via the network, a response to the hybrid object invocation, the response based at least in part on the received second intra-object message.

11. The non-transitory machine-readable storage medium of claim 10 , wherein:

receiving the hybrid object invocation includes receiving a method call of an object method present-in-part in the delivery object portion as an object method stub to:

receive the method call; and

invoke the executing of the method stub; and

the method present-in-part in the backend system object portion and includes a data processing functional core of the object method.

12. The non-transitory machine-readable storage medium of claim 10 , wherein the protocol of the backend computing system is a standards-based, lightweight data interchange format protocol.

13. The non-transitory machine-readable storage medium of claim 10 , wherein transmitting the first intra-object message to the backend computing system includes transmitting the first intra-object message to the backend computing system via a web server process that receives the first intra-object message and retransmits at least a portion of the first intra-object message to the backend system.

14. The non-transitory machine-readable storage medium of claim 13 , wherein generating the first intra-object message encoded at least in part according to the protocol of the backend computing system includes:

encoding at least the portion of the first intra-object message to be retransmitted by the web server process according to the protocol of the backend computing system, wherein the web server process does not need to perform a translation function on the portion of the first intra-object message before retransmitting the first intra-object message to the backend system.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2012
From: BOSKOVIC, SRDJAN
To: SAP AG
Reel/Frame 029403/0171 →