{"record":{"id":"d04ff4179aa8dd95","repo":"flowable/flowable-engine","slug":"usage-of-deprecated-property-use-flowableprocessp","errorCode":null,"errorMessage":"Usage of deprecated property. Use FlowableProcessProperties","messagePattern":"Usage of deprecated property\\. Use FlowableProcessProperties","errorType":"exception","errorClass":"IllegalStateException","httpStatus":null,"severity":"error","filePath":"modules/flowable-spring-boot/flowable-spring-boot-starters/flowable-spring-boot-autoconfigure/src/main/java/org/flowable/spring/boot/FlowableProperties.java","lineNumber":184,"sourceCode":"    public void setRestApiEnabled(boolean restApiEnabled) {\n        this.restApiEnabled = restApiEnabled;\n    }\n\n    public boolean isJpaEnabled() {\n        return jpaEnabled;\n    }\n\n    public void setJpaEnabled(boolean jpaEnabled) {\n        this.jpaEnabled = jpaEnabled;\n    }\n\n    /**\n     * @deprecated use {@link org.flowable.spring.boot.process.FlowableProcessProperties#getServlet()#getPath()}\n     */\n    @DeprecatedConfigurationProperty(replacement = \"flowable.process.servlet.path\")\n    @Deprecated\n    public String getRestApiMapping() {\n        throw new IllegalStateException(\"Usage of deprecated property. Use FlowableProcessProperties\");\n    }\n\n    /**\n     * @deprecated use {@link org.flowable.spring.boot.process.FlowableProcessProperties#getServlet()#setPath()}\n     */\n    @Deprecated\n    public void setRestApiMapping(String restApiMapping) {\n        throw new IllegalStateException(\"Usage of deprecated property. Use FlowableProcessProperties\");\n    }\n\n    /**\n     * @deprecated use {@link org.flowable.spring.boot.process.FlowableProcessProperties#getServlet()#getName()}\n     */\n    @DeprecatedConfigurationProperty(replacement = \"flowable.process.servlet.name\")\n    @Deprecated\n    public String getRestApiServletName() {\n        throw new IllegalStateException(\"Usage of deprecated property. Use FlowableProcessProperties\");\n    }","sourceCodeStart":166,"sourceCodeEnd":202,"githubUrl":"https://github.com/flowable/flowable-engine/blob/d6d39ce1c69ff244f2d9dc6af756a9b95e865586/modules/flowable-spring-boot/flowable-spring-boot-starters/flowable-spring-boot-autoconfigure/src/main/java/org/flowable/spring/boot/FlowableProperties.java#L166-L202","documentation":"FlowableProperties.getRestApiMapping() is a deprecated Spring Boot configuration property getter that has been hardened to throw IllegalStateException on any access. Flowable migrated the flowable.rest-api-mapping property to FlowableProcessProperties (flowable.process.servlet.path) and deliberately fails fast so stale configuration is detected instead of silently ignored. The throw is intentional, not a bug.","triggerScenarios":"Spring Boot configuration-property binding or metadata processing accesses the getter flowable.rest-api-mapping on FlowableProperties — e.g. a application.properties/yml still defining flowable.rest-api-mapping, or code calling flowableProperties.getRestApiMapping() directly.","commonSituations":"Upgrading Flowable (6.x -> 7.x / Spring Boot 3) with old flowable.rest-api-mapping keys left in application.yml; IDE auto-completion or generated configuration metadata still referencing the deprecated property; custom auto-configuration code reading the old getter.","solutions":["Remove flowable.rest-api-mapping from application.properties/yml and replace with flowable.process.servlet.path","Replace any direct calls to getRestApiMapping() with injection of FlowableProcessProperties and processProperties.getServlet().getPath()","Rebuild/re-run the app; check startup logs for which property key triggered binding"],"exampleFix":"// before (application.yml)\nflowable:\n  rest-api-mapping: /process-api\n// after\nflowable:\n  process:\n    servlet:\n      path: /process-api","handlingStrategy":"validation","validationCode":"if (env.containsProperty(\"flowable.rest-api-mapping\")) {\n    throw new IllegalStateException(\"Replace flowable.rest-api-mapping with flowable.process.servlet.path\");\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Grep config files for deprecated flowable.rest-api-* keys before upgrading","Use @DeprecatedConfigurationProperty replacements as a migration checklist","Keep Flowable migration notes per release when bumping versions"],"tags":["deprecated","spring-boot","configuration","flowable"],"backgroundTag":"deprecated-api-usage","analyzedSha":"d6d39ce1c69ff244f2d9dc6af756a9b95e865586","analyzedAt":"2026-09-11T06:41:19.413Z","contentChangedAt":"2026-09-11T06:41:19.413Z","schemaVersion":2},"datasetVersion":"2026-09-18T11:17:12.947Z"}