App Loaders

Overview

App Loaders provide import and export capabilities for Studio Apps. They allow you to transfer complete app packages — including their component definitions and optionally their data — between different Axelor environments (e.g., from development to production).

App Loaders are managed from App > Configuration > App Loaders.

The App Loaders menu entry is only visible when enableStudioApp is enabled in the Studio configuration.

App Loaders grid view

The grid view opens with a detail view layout (details-view=true), showing both the list and the form side by side.

App Loader Form

Each App Loader record has two tabs: Import and Export.

App Loader form

Import Tab

The import tab allows you to upload and import Studio Apps from a file.

Field Type Description

Import file

File (BinaryLink)

Upload the ZIP file to import.

Imported apps

M2M: StudioApp (readonly)

After import, displays the list of Studio Apps that were imported.

Import log

File (BinaryLink, readonly)

If any issues occurred during import, the log file is attached here.

Imported on

DateTime (readonly)

Timestamp of the last import operation.

To import apps:

  1. Click New to create a new App Loader (or select an existing one)

  2. Upload the ZIP file in the Import file field

  3. Click Import

  4. Review the Imported apps list and check the Import log for any issues

Export Tab

The export tab allows you to package selected Studio Apps into a downloadable file.

Field Type Description

Export apps

M2M: StudioApp (TagSelect)

Select the Studio Apps to include in the export.

Export file

File (BinaryLink, readonly)

After export, the generated ZIP file is attached here.

Exported on

DateTime (readonly)

Timestamp of the last export operation.

Export data

O2M: AppDataLoader

Configure data export rules for each model. See Data Export Configuration (AppDataLoader) below.

To export apps:

  1. Select the Studio Apps to export in the Export apps field

  2. Optionally configure data export rules (see below)

  3. Click Export

  4. Download the generated file from the Export file field

Data Export Configuration (AppDataLoader)

The Export data panel allows you to define which model data should be included in the export. Each AppDataLoader entry specifies a model and the fields and search criteria for its data.

AppDataLoader configuration
Field Type Description

Is JSON

Boolean

Toggle between custom (JSON) models and standard models.

Model (standard)

M2O: MetaModel

The standard model whose data should be exported. Shown when Is JSON is unchecked.

Model (JSON)

M2O: MetaJsonModel

The JSON model whose data should be exported. Shown when Is JSON is checked.

Fields (standard)

M2M: MetaField

The fields to include in the export for standard models.

Fields (JSON)

M2M: MetaJsonField

The fields to include in the export for JSON models.

Search fields (standard)

M2M: MetaField

Fields used to identify existing records during import (match criteria).

Search fields (JSON)

M2M: MetaJsonField

Fields used to identify existing records during import (match criteria) for JSON models.

Filter query

Large String

A JPQL-like filter expression to restrict which records are exported.

Sequence

Integer

Order in which data loaders are processed during export.

Use Search fields to define how the import process identifies whether a record already exists. For example, if you set code as a search field, the import will match records by their code value and update them instead of creating duplicates.

Example: Exporting Product Data

To include product data in your app export:

  1. Add a new entry in the Export data panel

  2. Set Is JSON to unchecked (standard model)

  3. Select the Product model

  4. Select the fields to export: code, name, salePrice, purchasePrice

  5. Set Search fields to code (used for matching during import)

  6. Optionally add a filter: self.productTypeSelect = 'storable' to export only storable products

  7. Set Sequence to control processing order

Technical Details

AppLoader Entity

Field Type Description

name

String

Loader name

exportMetaFile

M2O: MetaFile

Exported ZIP file

importMetaFile

M2O: MetaFile

Uploaded import file

importLog

M2O: MetaFile

Import log file

exportedStudioAppSet

M2M: StudioApp

Apps selected for export

importedStudioAppSet

M2M: StudioApp

Apps that were imported

exportedOn

DateTime

Export timestamp

importedOn

DateTime

Import timestamp

appDataLoaderList

O2M: AppDataLoader (orderBy: sequence)

Data export configuration entries

AppDataLoader Entity

Field Type Description

appLoader

M2O: AppLoader

Parent App Loader

isJson

Boolean

JSON model toggle

metaModel

M2O: MetaModel

Standard model reference

jsonModel

M2O: MetaJsonModel

JSON model reference

metaFieldSet

M2M: MetaField

Fields to export (standard)

jsonFieldSet

M2M: MetaJsonField

Fields to export (JSON)

searchMetaFieldSet

M2M: MetaField

Search/match fields (standard)

searchJsonFieldSet

M2M: MetaJsonField

Search/match fields (JSON)

filterQuery

Large String

JPQL filter expression

sequence

Integer

Processing order

modelName

String

Computed model name

Key backend services:

  • AppLoaderController.exportApps() — Generates the export ZIP file

  • AppLoaderController.importApps() — Processes the import file and loads apps