The code is not getting inside of the handler in Saas

i have deployed my process online and everything works fine. but no I am deploying my service locally in the port 26500 and the thing is that in the local version i am not able to get inside of a handler that on this case handles Rest jobs. this is my code :slightly_smiling_face:

public JobWorker createJobWorker(String jobTypeName, String workerName, JobHandler taskHandler, Long processInstanceId,SuccessWrapper successWrapper){
    	logger.info("5. entre a createJobWorker");
    	if(workerName.equals("service3TaskWorker")){	
            return client.newWorker()
        	        .jobType(jobTypeName)
        	        .handler((jobClient, job) -> {
        	        	logger.info("entre al handler");
        	        	taskHandler.handle(jobClient, job);})
        	        .maxJobsActive(5)
        	        .name(workerName)
        	        .pollInterval(Duration.ofMillis(100))
        	        .open();
    	}else{
    		return client.newWorker()
    	        .jobType(jobTypeName)
    	        .handler(taskHandler)
    	        .maxJobsActive(5)
    	        .name(workerName)
    	        .pollInterval(Duration.ofMillis(100))
    	        .open();
    	}
    }

and this is my handler

public class ServiceThreeTaskHandler implements JobHandler {

        private final ProcessService processService;
        private final Long processInstanceId;
        private final Logger logger = LoggerFactory.getLogger(getClass());
        private final SuccessWrapper successWrapper;

        public ServiceThreeTaskHandler(ProcessService processService, Long processInstanceId, SuccessWrapper successWrapper) {
	        this.processService = processService;
	        this.processInstanceId = processInstanceId;
            this.successWrapper = successWrapper;
        }

        @Override
        public void handle(final JobClient jobClient, final ActivatedJob job) {
        	logger.info("si entre al handler");
	        if (job.getProcessInstanceKey() == processInstanceId) {
	        	try {
		        	logger.info("entre a ServiceThreeTaskHandler handle con processInstanceId :{} y tipo de trabajo :{} ",processInstanceId,job.getType());
			        final Variables variables = processService.variables;
			        final String catfact = (String) job.getVariablesAsMap().get("catfact");
	                variables.appendMensaje(catfact);
	                processService.completarTrabajo(jobClient, job, variables, processInstanceId, successWrapper);
	            } catch (Exception e) {
	                e.printStackTrace();
	            }
	        }else {
            	jobClient.newFailCommand(job.getKey()).retries(3).send();
            }
        }
}

as i told you before it works fine with usertasks and service tasks but with this one is not getting in locally.
I would really appreciate any clue of what is going on.

Hi @Juan_Felipe_Parrado,

I’m not certain, whether I fully understand your question.
So let me summarize:

  1. You have multiple job workers
  2. You tried them on Camunda 8 SaaS (cloud) and everything worked
  3. You try them locally and only Service and user-tasks work, but not the REST Connector.
    Is that correct?

If so, did you start the connectors:

Regards,

Stephan

y resto connector is very simple it just calls this url “https://catfact.ninja/fact”, doesnt require auth and returns a string of a coupe of words.
i added this folder to my project “https://github.com/camunda/connectors/tree/main/connectors/http/rest/src/main/java/io/camunda/connector/http/rest” into my project, also this “https://github.com/camunda/connectors/tree/main/connectors/http/rest/element-templates”.

All the dependencies
"

io.camunda.connector
connector-core
0.22.1

    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>spring-boot-starter-camunda-connectors</artifactId>
        <version>${connector.version}</version>
        <!-- https://mvnrepository.com/artifact/io.camunda.connector/spring-boot-starter-camunda-connectors -->
    </dependency>
    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>connector-http-json</artifactId>
        <version>${connector.version}</version>
        <!-- https://mvnrepository.com/artifact/io.camunda.connector/connector-http-json -->
    </dependency>
    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>connector-sqs</artifactId>
        <version>${connector.version}</version>
        <!-- https://mvnrepository.com/artifact/io.camunda.connector/connector-sqs -->
    </dependency>
    <!-- Other dependencies -->
    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>connector-http-base</artifactId>
        <version>${connector-base.version}</version>
    </dependency>
    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>jackson-datatype-feel</artifactId>
        <version>${connector-core.version}</version>
    </dependency>
    <dependency>
        <groupId>io.camunda.connector</groupId>
        <artifactId>connector-validation</artifactId>
        <version>${connector-core.version}</version>
    </dependency>

"

This is the part of the bpmn related to the rest connector
"
<bpmn:serviceTask id=“callendpoint” name=“llama endpoint” camunda:expression=“${'llama endpoint'.toLowerCase()}”>
bpmn:extensionElements
<zeebe:taskDefinition type=“io.camunda:http-json:1” />
zeebe:ioMapping
<zeebe:input source=“noAuth” target=“authentication.type” />
<zeebe:input source=“get” target=“method” />
<zeebe:input source=“https://catfact.ninja/fact” target=“url” />
<zeebe:input source=“20” target=“connectionTimeoutInSeconds” />
</zeebe:ioMapping>
zeebe:taskHeaders
<zeebe:header key=“resultVariable” value=“catResponse” />
<zeebe:header key=“resultExpression” value=“={ catfact:response.body.fact }” />
</zeebe:taskHeaders>
</bpmn:extensionElements>
bpmn:incomingFlow_1k43pnl</bpmn:incoming>
bpmn:outgoingFlow_01yq7hs</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:sequenceFlow id=“Flow_1k43pnl” sourceRef=“Gateway_09s16sp
" targetRef=“callendpoint” />”, but when i try to run it i get these errors “java.lang.IllegalStateException: Error processing condition on io.camunda.connector.runtime.ConnectorsAutoConfiguration.springConnectorPropertyResolver
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:60)
at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:108)”, “Caused by: java.lang.IllegalStateException: @ConditionalOnMissingBean did not specify a bean using type, name or annotation and the attempt to deduce the bean’s type failed
at org.springframework.boot.autoconfigure.condition.OnBeanCondition$Spec.validate(OnBeanCondition.java:496)”, “Caused by: org.springframework.boot.autoconfigure.condition.OnBeanCondition$BeanTypeDeductionException: Failed to deduce bean type for io.camunda.connector.runtime.ConnectorsAutoConfiguration.springConnectorPropertyResolver
at org.springframework.boot.autoconfigure.condition.OnBeanCondition$Spec.deducedBeanTypeForBeanMethod(OnBeanCondition.java:526)” i dont know what else i am missing here. i would really appreciate any guidance here.