Next-generation platform

Working with mashups

The mashup layer connects user actions at the front end of an application with business logic at the backend of an application.

The mashup layer handles authorization and transaction management tasks. The mashup layer allows business calls to handle data to be used in more than one place, such as a backend server and database, without being repeated.

The mashup layer is a core logic service layer that acts as an intermediate service layer to which both action classes and JSON (JavaScript Object Notation) endpoints delegate. Examples include the controller in the UI backend and the Dojo JSON in the presentation layer. The controller classes and the JSON endpoints act as types of adapters, with the core logic contained in the service layer.

The mashup layer is used to start business calls (XAPI calls) for handling data in the backend server. Each XAPI call and multiple XAPI call are always called under one transaction. Each multiple XAPI is under one transaction. The mashup layer is a mixture of XAPIs and other mashups.

It is recommended that you use the mashup layer. The mashup layer does not contain business logic. Its main purpose is to call different APIs and create data that is user interface-specific.

The mashup layer can:

  • Handle calls to the business logic layer to get or modify data.
  • Take responsibility for bean creation and start the business logic layer.
  • Take responsibility for managing data transformation so that the output data is ready for use in the presentation layer.

If errors occur in any of the following situations, check your mashup setup.

  • If the mashup metadata is not found for a mashup ID.
  • If mashup metadata is not extensible, but an attempt is made to extend it.

Application architecture

The following diagram illustrates the architecture of the mashup layer and its interactions with the other layers.

Mashup architecture diagram