Custom Camunda 8 Connector with BPMN Error Code - Paranamer Version

Be aware of Spring Boot Custom Connectors trowing a ConnectorException with your error code.

Scala is throwing an NoSuchMethodException that wont be visible if com.thoughtworks.paranamer:paranamer 2.8.1 is on the classpath (org.springframework.boot:spring-boot-starter-test will provide this version).

This will leed to no awnser submitted to the engine and no visible error in your connector :frowning:

How to Reproduce:
Camunda stack via Docker. Version should not matter, I used the 8.7.0 Stack
Spring Boot application 3.4.4 (other Version effected)

Connector Excample:

@OutboundConnector(
    name = "test.connector1",
    inputVariables = {
        "operation",
        "content",
    },
    type = "test:connector1:1"
)
@Component
public class TestConnector extends OutboundConnectorFunction {

    @Autowired
    private MyService myService;

    @Override
    Object execute(OutboundConnectorContext context) throws Exception {
        throw new ConnectorException("my_bpmn_error_code", "message");
    }
}

Solution:
Enforce Paranamer Version:

        <dependency>
            <groupId>com.thoughtworks.paranamer</groupId>
            <artifactId>paranamer</artifactId>
            <version>2.8</version>
        </dependency>
2 Likes

We also tried out the patched version which is 2.8.3:

<dependency>
  <groupId>com.thoughtworks.paranamer</groupId>
  <artifactId>paranamer</artifactId>
  <version>2.8.3</version>
</dependency>

and it works without any problems.

The caveat is that the error is wither logged nor visible. The only way to detect it, is to observe that the connector code is executed, but the engine will nver recieve any indications on that.

@roman.smirnov this is the bug we were talking about today on CamundaCon2025. I believe the ConnectorHelper need some love to handle such edge cases correctly.

1 Like