Getting Unknown property used in expression: ${httpStatus!=200}. Cause: Cannot resolve identifier 'httpStatus'

Hi All,

Unknown property used in expression: ${httpStatus!=200}. Cause: Cannot resolve identifier ‘httpStatus’
the exception comes when send task hits the connector api and it properly hitting the connector api
Java method(connector api-
public int connectorApi(HttpServletResponse response, HttpServletRequest request)
{
int statusCode=200;
return statusCode;
}
exception stace:
Caused by: org.camunda.bpm.engine.ProcessEngineException: Unknown property used in expression: ${httpStatus!=200}. Cause: Cannot resolve identifier ‘httpStatus’

at org.camunda.bpm.engine.impl.el.JuelExpression.getValue(JuelExpression.java:63)

at org.camunda.bpm.engine.impl.el.UelExpressionCondition.evaluate(UelExpressionCondition.java:50)

at org.camunda.bpm.engine.impl.el.UelExpressionCondition.evaluate(UelExpressionCondition.java:45)

at org.camunda.bpm.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehavior.doLeave(ExclusiveGatewayActivityBehavior.java:64)

ATTACHING THE BPMN:

code.bpmn (10.7 KB)

@manisha, Send Task and Exclusive gateway are executed in same thread, so the data is not flushed to the db till the execution arrives next waiting state. Enabling the async properties (camunda:asyncBefore="true") would add an savepoint for the execution flow and persists the data to the db, so that the variable httpStatus will be available to validate the condition in the exclusive gateway.

Hi @aravindhrs

Thanks for the quick response.
So i did as mentioned , tick marked the asyn before + exclusive
now when my method returns 200, then token should have moved to recieve task ,
instead it stayed at the gateway(the gateway you marked)-
,(the bpmn is already uploded above)
Thank in advance :slight_smile:

@manisha are you able to see the value for the variable httpStatus in the cockpit?

@aravindhrs yes i am able to see the value as 200 as process variable for httpStatus.