chore(code-conversion): fix sb code-examples#1034
Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds execution listener migration example code to both Camunda 7 and Camunda 8 code-examples modules, and fixes configuration issues in the Camunda 8 Spring Boot example project. The changes demonstrate how Camunda 7 execution listeners migrate to Camunda 8 JobWorkers, providing a complete working example with tests and REST endpoints.
Changes:
- Added execution listener example files for both Camunda 7 and Camunda 8 (BPMN, Java implementation, controller, tests)
- Fixed Camunda 8 example to use
spring-boot-starter-webinstead ofspring-boot-starter(required for REST controllers) - Added missing
testscope tocamunda-process-test-springdependency - Renamed Camunda 7 external task worker subscriptions to unique names to prevent conflicts
- Deleted unnecessary Maven wrapper configuration from camunda-8 example module
- Added Camunda 7 external task client configuration in application.yaml
Reviewed changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| code-conversion/patterns/code-examples/camunda-8/pom.xml | Changed to spring-boot-starter-web and added test scope to camunda-process-test-spring |
| code-conversion/patterns/code-examples/camunda-8/src/main/java/io/camunda/conversion/ProcessPaymentsApplication.java | Added @Deployment annotation to auto-deploy BPMN files |
| code-conversion/patterns/code-examples/camunda-8/src/main/java/io/camunda/conversion/execution_listeners/MyExecutionListener.java | JobWorker implementation showing migrated execution listener |
| code-conversion/patterns/code-examples/camunda-8/src/main/java/io/camunda/conversion/execution_listeners/ExecutionListenerTestController.java | REST endpoint to trigger the execution listener test process |
| code-conversion/patterns/code-examples/camunda-8/src/main/resources/execution-listener-test.bpmn | BPMN process with service task that invokes JobWorker |
| code-conversion/patterns/code-examples/camunda-8/src/test/java/io/camunda/conversion/execution_listeners/MyExecutionListenerTest.java | Integration test verifying the migrated execution listener works |
| code-conversion/patterns/code-examples/camunda-8/src/test/resources/application.properties | Test configuration file for Spring Boot tests |
| code-conversion/patterns/code-examples/camunda-8/.mvn/wrapper/maven-wrapper.properties | Deleted unnecessary Maven wrapper configuration |
| code-conversion/patterns/code-examples/camunda-7/src/main/java/org/camunda/conversion/execution_listeners/MyExecutionListener.java | Original Camunda 7 execution listener implementation |
| code-conversion/patterns/code-examples/camunda-7/src/main/java/org/camunda/conversion/execution_listeners/ExecutionListenerTestController.java | REST endpoint for Camunda 7 version |
| code-conversion/patterns/code-examples/camunda-7/src/main/resources/execution-listener-test.bpmn | BPMN process with execution listener |
| code-conversion/patterns/code-examples/camunda-7/src/main/resources/application.yaml | Added external task client configuration |
| code-conversion/patterns/code-examples/camunda-7/src/main/java/org/camunda/conversion/external_task_workers//.java | Renamed external task subscriptions to unique names to prevent conflicts |
There was a problem hiding this comment.
❓ Do we want to delete mvnw* in camunda-8 directory too?
There was a problem hiding this comment.
🙃 Maybe move dependencyManagement section before dependencies, the pom is a bit chaotic at the moment.
There was a problem hiding this comment.
👍 Cleaned up the pom.xml file.
Pull Request Template
Description
#540
Type of Change
Testing Checklist
Black-Box Testing Requirements
DbClient,IdKeyMapper,..impl..packages except logging constants)ArchitectureTestvalidates these rules)Test Coverage
Architecture Compliance
Run architecture tests to ensure compliance:
mvn test -Dtest=ArchitectureTestIf architecture tests fail, refactor your tests to use:
LogCapturerfor log assertionscamundaClient.new*SearchRequest()for C8 queriesDocumentation
Checklist
Related Issues
#540