Skip to main content

Extensibility

Introduction

The ADITO platform is built to be extensible by design. Whether you want to integrate third-party systems, customize platform behavior, or create your own business modules, ADITO provides various extension mechanisms tailored to different use cases.

This section provides an overview of these options and when to use which approach.


Overview of Extension Types

Extension TypeUse Case ExampleTechnology / Tool
PluginsAdd new backend logic or serviceJava (via Plugin SDK)
REST APIConnect external systems for data accessHTTPS/JSON
WebhooksPush changes to external systems in real-timeREST, EventBus
EventsTrigger internal workflows or custom logicEvent listeners / JDito
JDito ScriptingImplement business logic in context of entities/formsJavaScript (Rhino)
UI ExtensionsExtend the ADITO frontendReact-based components

ADITO Plugin System

The plugin framework allows the deployment of Java-based extensions to the platform. Plugins can register services, handle events, or provide additional logic that runs server-side.

Common use cases:

  • Complex calculations
  • Custom data providers or importers
  • Backend integrations with third-party systems

REST API and Web Services

ADITO provides modern APIs to read and write data from external systems.

  • RESTful endpoints: Full CRUD access to platform data
  • Authentication: Token-based OAuth2 / Session token
  • Use cases: Integration with portals, mobile apps, middleware

Additionally, you can call external APIs from within ADITO using:

  • Webservice Connectors (SOAP or REST)
  • JDito HTTP calls for lightweight interaction

Events and Webhooks

The ADITO EventBus enables internal and external event handling.

  • Internal: Trigger JDito or workflows on create/update/delete events
  • External: Configure Webhooks to notify third-party systems

Example:

On entity update → Trigger Webhook → Notify external service
tip

Use system events together with the Flowable Engine to control complex workflows.


JDito and Business Logic

JDito is a JavaScript-based scripting language with ADITO extensions. It is used to:

  • Automate field behavior
  • Enforce validation rules
  • Access related data or execute HTTP requests
info

JDito is Rhino-based and integrates seamlessly with the platform’s metadata structure.


UI Extensions

ADITO supports integration of custom UI components using a plugin mechanism and React-based widgets. This enables:

  • Embedding dashboards
  • Custom input fields or charts
  • Context-sensitive UI panels
warning

👉 INSERT HERE: Example of registering a React UI component (or link to developer guide)


Choosing the Right Extension Path

GoalRecommended Mechanism
Read/write data externallyREST API
Notify other systemsWebhooks
Internal automationJDito / Workflows
Complex logic/backend servicesPlugins (Java)
Custom frontend componentUI Plugin (React)

Extensible Integration Points

In addition to configurable features, ADITO provides technical interfaces such as: • generic LDAP integration using configurable XML commands (for example search, create, replace) • REST/SOAP receiving processes (listener-based) • SQL-based external database integration • flexible file imports for JSON, CSV, and XML (via timer-based processes)

These integration points form the foundation for system extensions and custom integrations.