flowable/flowable-engine · error · FlowableIllegalArgumentException
deploymentNameLike is null
Error message
deploymentNameLike is null
What it means
AppDeploymentQueryImpl.deploymentNameLike() throws FlowableIllegalArgumentException when the nameLike pattern argument is null. The LIKE filter needs a non-null pattern string; null is rejected at call time.
Source
Thrown at modules/flowable-app-engine/src/main/java/org/flowable/app/engine/impl/repository/AppDeploymentQueryImpl.java:87
throw new FlowableIllegalArgumentException("Deployment ids is null");
}
this.deploymentIds = deploymentIds;
return this;
}
@Override
public AppDeploymentQueryImpl deploymentName(String deploymentName) {
if (deploymentName == null) {
throw new FlowableIllegalArgumentException("deploymentName is null");
}
this.name = deploymentName;
return this;
}
@Override
public AppDeploymentQueryImpl deploymentNameLike(String nameLike) {
if (nameLike == null) {
throw new FlowableIllegalArgumentException("deploymentNameLike is null");
}
this.nameLike = nameLike;
return this;
}
@Override
public AppDeploymentQueryImpl deploymentCategory(String deploymentCategory) {
if (deploymentCategory == null) {
throw new FlowableIllegalArgumentException("deploymentCategory is null");
}
this.category = deploymentCategory;
return this;
}
@Override
public AppDeploymentQueryImpl deploymentCategoryNotEquals(String deploymentCategoryNotEquals) {
if (deploymentCategoryNotEquals == null) {
throw new FlowableIllegalArgumentException("deploymentCategoryExclude is null");View on GitHub (pinned to d6d39ce1c6)
Solutions
- Guard: only call deploymentNameLike when the pattern is non-null (and non-empty).
- Normalize empty/null inputs to 'skip this filter' in your query-builder helper.
- Provide a default pattern like "%" if you intend an all-match search.
- Catch FlowableIllegalArgumentException at the boundary for a clean error message.
Example fix
// before
query.deploymentNameLike(searchTerm); // may be null
// after
if (searchTerm != null && !searchTerm.isEmpty()) {
query.deploymentNameLike("%" + searchTerm + "%");
} Defensive patterns
Strategy: validation
Validate before calling
if (nameLike != null && !nameLike.isBlank()) query.deploymentNameLike("%" + nameLike + "%"); Type guard
boolean isNotBlank(String s) { return s != null && !s.isBlank(); } Try / catch
try {
query.deploymentNameLike(pattern);
} catch (org.flowable.common.engine.api.FlowableIllegalArgumentException e) {
throw new javax.ws.rs.BadRequestException("nameLike must not be null", e);
} Prevention
- Skip LIKE filters when the search term is absent
- Trim and check emptiness before wrapping with wildcards
- Use Optional<String> in your query-builder API to force explicit handling
When it happens
Trigger: Calling deploymentNameLike(null) — the parameter (named nameLike in the API) is null, often an optional search term never defaulted.
Common situations: Building a dynamic query where a wildcard clause is only added sometimes but the call is unconditional; null from an empty form field not normalized to a value.
Understand the failure class
Background: "missing required argument" and "the following required arguments were not provided": what required-argument errors mean and how to fix them — this error's family across 20 libraries.
Related errors
- Deployment id is null
- Deployment ids is null
- deploymentName is null
- deploymentCategory is null
- deploymentCategoryExclude is null
AI-assisted analysis of flowable/flowable-engine@d6d39ce1c6 (2026-09-11).
Data as JSON: /api/errors/92132c91ada80d96.
Report an issue: GitHub.