Seding message via /message REST API causes java.lang.ClassNotFoundException

We have a setup where we have multiple process definitions deployed on multiple servers. We also have the cockpit deployed in a separate host where we deploy the REST API too. I am trying to send a message to one of the process definitions deployed on a different host. The message gets processed and then return a ClassNotFoundException for the class corresponding to service task that is supposed to run when the message is received.

Is it necessary that the REST API is deployed with the process definition? Can this not be achieved with a single server hosting the REST API?

Thanks,
Akhil.

Hi @Akhil_Ahuja,

not necessarily, but you have to be careful attaching listener and providing async before in front of service tasks. Watch this video https://www.youtube.com/watch?v=Nx4I8lNMUs0 from a customer presentation about solving similar problems.

Hope this helps, Ingo

Thank you so much for a prompt reply.

So I looked at the video given in the comment above. Its great to see people having similar problems and solving them. I understand the part of setting asynchronus execution, the job executors though I am not sure I understand exactly how they work. We have several process definitions deployed with their own embedded engines and then the REST API deployed with an engine too. I have a feeling after reading all of this that if I make it async it should work as I already have deployment_aware set to true.

I will try to setup an experiment locally and see if I can repro then fix the problem.

Hi @Ingo_Richtsmeier,

Just wanted to update this thread, setting transaction boundaries there helped in my local test setup and I have a feeling it will work in production too.

Thanks for helping out.

Cheers,
Akhil.