flowable/flowable-engine · error · FlowableException

Setting a deployment name is not supported for apps

Error message

Setting a deployment name is not supported for apps

What it means

SpringAppEngineConfiguration intentionally rejects setDeploymentName: app deployments do not use the configurable deployment-name mechanism that other Flowable engines support. The setter is overridden only to fail fast with this FlowableException so callers learn the option is unsupported rather than silently ignored.

Source

Thrown at modules/flowable-app-engine-spring/src/main/java/org/flowable/app/spring/SpringAppEngineConfiguration.java:226

        synchronized (lifeCycleMonitor) {
            running = false;
        }
    }

    @Override
    public boolean isRunning() {
        return running;
    }

    @Override
    public String getDeploymentName() {
        return null;
    }

    @Override
    public void setDeploymentName(String deploymentName) {
        // not supported
        throw new FlowableException("Setting a deployment name is not supported for apps");
    }
}

View on GitHub (pinned to d6d39ce1c6)

Solutions

  1. Remove the setDeploymentName call / deployment-name property from the app engine configuration.
  2. Guard shared configuration code so deploymentName is only set for engines that support it (e.g. check instanceof before calling).
  3. If a distinguishable deployment name is needed, rely on the app deployment's built-in naming instead of this API.

Example fix

// before
SpringAppEngineConfiguration cfg = new SpringAppEngineConfiguration();
cfg.setDeploymentName("myAppDeployment");
// after
SpringAppEngineConfiguration cfg = new SpringAppEngineConfiguration();
// deployment name is not supported for the app engine; remove the call
Defensive patterns

Strategy: validation

Validate before calling

if (config instanceof SpringAppEngineConfiguration) {
    // do NOT call setDeploymentName on the app engine
}

Type guard

if (config instanceof SpringAppEngineConfiguration) { skipDeploymentName(); } else { config.setDeploymentName(name); }

Try / catch

try { config.setDeploymentName(name); } catch (FlowableException e) { log.warn("deploymentName unsupported for this engine, ignoring"); }

Prevention

When it happens

Trigger: Calling setDeploymentName(...) on a SpringAppEngineConfiguration (directly, or via shared configuration-building code that sets deploymentName for any engine type) before building the AppEngine.

Common situations: Reusing a generic Spring Boot / Flowable configuration property (e.g. flowable.process.deployment-name style properties) across app-engine configuration; copy-pasting engine config code from process/cmmn engines to the app engine.

Understand the failure class

Background: UnsupportedOperationException and "is not supported" errors: when a library deliberately refuses a call — this error's family across 30 libraries.

Related errors


AI-assisted analysis of flowable/flowable-engine@d6d39ce1c6 (2026-09-11). Data as JSON: /api/errors/43e8bc4b9659a73a. Report an issue: GitHub.