{"record":{"id":"58ca643b7a3af082","repo":"flowable/flowable-engine","slug":"invalid-app-definition-id-null","errorCode":null,"errorMessage":"Invalid app definition id : null","messagePattern":"Invalid app definition id : null","errorType":"validation","errorClass":"FlowableIllegalArgumentException","httpStatus":null,"severity":"error","filePath":"modules/flowable-app-engine/src/main/java/org/flowable/app/engine/impl/deployer/AppDeploymentManager.java","lineNumber":59,"sourceCode":"    protected DeploymentCache<AppDefinitionCacheEntry> appDefinitionCache;\n    protected List<EngineDeployer> deployers;\n    protected AppEngineConfiguration appEngineConfiguration;\n    protected AppDeploymentEntityManager deploymentEntityManager;\n    protected AppDefinitionEntityManager appDefinitionEntityManager;\n\n    public void deploy(EngineDeployment deployment) {\n        deploy(deployment, null);\n    }\n\n    public void deploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) {\n        for (EngineDeployer deployer : deployers) {\n            deployer.deploy(deployment, deploymentSettings);\n        }\n    }\n\n    public AppDefinition findDeployedAppDefinitionById(String appDefinitionId) {\n        if (appDefinitionId == null) {\n            throw new FlowableIllegalArgumentException(\"Invalid app definition id : null\");\n        }\n\n        AppDefinitionCacheEntry cacheEntry = appDefinitionCache.get(appDefinitionId);\n        AppDefinition appDefinition = cacheEntry != null ? cacheEntry.getAppDefinition() : null;\n\n        if (appDefinition == null) {\n            appDefinition = appDefinitionEntityManager.findById(appDefinitionId);\n            if (appDefinition == null) {\n                throw new FlowableObjectNotFoundException(\"no deployed app definition found with id '\" + appDefinitionId + \"'\", AppDefinition.class);\n            }\n            appDefinition = resolveAppDefinition(appDefinition).getAppDefinition();\n        }\n        return appDefinition;\n    }\n\n    public AppDefinition findDeployedLatestAppDefinitionByKey(String appDefinitionKey) {\n        AppDefinition appDefinition = appDefinitionEntityManager.findLatestAppDefinitionByKey(appDefinitionKey);\n","sourceCodeStart":41,"sourceCodeEnd":77,"githubUrl":"https://github.com/flowable/flowable-engine/blob/d6d39ce1c69ff244f2d9dc6af756a9b95e865586/modules/flowable-app-engine/src/main/java/org/flowable/app/engine/impl/deployer/AppDeploymentManager.java#L41-L77","documentation":"Null-argument guard in AppDeploymentManager.findDeployedAppDefinitionById: the cache/DB lookup for a deployed app definition was requested with a null id, which is treated as an invalid identifier rather than a miss.","triggerScenarios":"Thrown at modules/flowable-app-engine/src/main/java/org/flowable/app/engine/impl/deployer/AppDeploymentManager.java:59 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass a non-null app definition id","Guard callers such as getAppDefinition/getAppModel so they never forward a null id"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"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"}