luigidemasi opened a new issue, #15: URL: https://github.com/apache/camel-kit/issues/15
> Imported from [luigidemasi/camel-kit#19](https://github.com/luigidemasi/camel-kit/issues/19), opened by [vaprea](https://github.com/vaprea) on 2026-04-30. --- ## Summary Add support for migrating TIBCO BusinessWorks 6 (BW6) projects to Apache Camel 4.x, following the same pattern established for MuleSoft and JBoss Fuse migrations. ## Motivation TIBCO BW6 is a widely deployed enterprise integration platform. Many organisations are looking to migrate away from it toward open-source alternatives such as Apache Camel on Quarkus or Spring Boot. Camel-Kit already covers MuleSoft (Mule 3/4) and JBoss Fuse migrations end-to-end; BW6 is the next logical target. The WSO2 [integration-bi-migration-assistant](https://github.com/wso2/integration-bi-migration-assistant) already provides a solid reference implementation for parsing BW6 artefacts (see the [`tibco/`](https://github.com/wso2/integration-bi-migration-assistant/tree/main/tibco) module). ## Proposed Scope ### 1. `camel-kit-graph` — Project graph parsing [`tibco/`](https://github.com/wso2/integration-bi-migration-assistant/tree/main/tibco) module). ## Proposed Scope ### 1. `camel-kit-graph` — Project graph parsing Introduce a `TibcoBW6Parser` implementing `GraphParser` to walk a BW6 project directory and populate the `ProjectGraph`. Key artefacts to recognise: | BW6 artefact | File pattern | Proposed `NodeType` | |---|---|---| | Process definition | `*.bwp`, `*.process` | `BW6_PROCESS` | | Shared resource | `*.sharedhttp`, `*.sharedjdbc`, `*.sharedjmscon`, `*.sharedvariable` | `BW6_SHARED_RESOURCE` | | Service descriptor | `*.wsdl` / `*.xsd` / `*.xslt` | `BW6_SERVICE` | | Application module | `META-INF/MANIFEST.MF`, `pom.xml` | `BW6_MODULE` | | Palette activity | inline in `.bwp` / `.process` | `BW6_ACTIVITY` | New `NodeType` values to add: `BW6_PROCESS`, `BW6_SHARED_RESOURCE`, `BW6_SERVICE`, `BW6_MODULE`, `BW6_ACTIVITY`. The parser should extract: - Process name, start activity (trigger), and end activity (return/error) - Transition graph between activities (→ `GraphEdge` with `EdgeType.CALLS`) - Shared resource references (JDBC, JMS, HTTP, SOAP) - Subprocess calls (`CallProcessActivity` / `bw.internal.end`) The WSO2 `XmlToTibcoModelParser` and `ProcessConverter` are useful references for the XML structure of both BW5 (`.process`) and BW6 (`.bwp`) files. ### 2. `camel-kit-core` — Migration specialist agent Extend the `migration-specialist` agent prompt to cover BW6: - Detect BW6 from `pom.xml` (group `com.tibco.bw`) or `.bwp` / `.process` file presence - Map BW6 palette activities to Camel 4.x components: | BW6 activity | Camel equivalent | |---|---| | `bw.http.sendHTTPRequest` / `HTTPEventSource` | `camel-http`, `camel-platform-http` | | `JMSQueueEventSource` / `JMSQueueSendActivity` | `camel-jms` | | `JDBCGeneralActivity` | `camel-jdbc`, `camel-sql` | | `SOAPSendReceiveActivity` / `SOAPSendReplyActivity` | `camel-cxf` | | `FileReadActivity` / `FileWriteActivity` | `camel-file` | | `bw.generalactivities.mapper` / `XMLRendererActivity` | inline `transform` DSL | | `CallProcessActivity` | `direct:` or `seda:` | | `CatchActivity` | `onException`, `doTry/doCatch` | | `bw.restjson.JsonParser` / `JsonRender` | `camel-jackson` | - Flag BW6-specific concepts with no direct Camel equivalent — shared variables (`.sharedvariable`, `.jobsharedvariable`), checkpoints, job sharing — and provide recommended migration patterns. ### 3. `/camel-migrate` command Update `/camel-migrate` to recognise BW6 project structure. Detection heuristics: - `META-INF/MANIFEST.MF` containing `TIBCO-BW-Process-Packages` - Presence of `*.bwp` or `*.process` files - `pom.xml` with packaging `bwear` or `bwmodule` (group `com.tibco.bw`) When detected, automatically set `--source-platform bw6`. ## References - Existing MuleSoft parser: `camel-kit-graph/.../parser/MuleXmlFlowParser.java` - Migration agent: `camel-kit-core/.../resources/agents/migration-specialist.md` - Node type model: `camel-kit-graph/.../model/NodeType.java` - **WSO2 BW6 parser reference**: [`wso2/integration-bi-migration-assistant — tibco/`](https://github.com/wso2/integration-bi-migration-assistant/tree/main/tibco) — covers BW5 (`.process`) and BW6 (`.bwp`) XML parsing, shared resource formats, and activity-level conversion; includes 10+ sample projects - TIBCO BW6 Developer Guide (palette reference): https://docs.tibco.com/pub/activematrix_businessworks/6.6.0/doc/pdf/TIB_BW_6.6_application_development.pdf -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
