This section outlines the key structural differences between BAMOE v8 and v9, including changes in project generation, runtime models, configuration mechanisms, and integration patterns. Whether you’re migrating client-server or standalone projects, understanding these changes is essential for aligning with BAMOE v9 streamlined, code-first development model.
Client-server and standalone comparison on BAMOE 8 and BAMOE 9.2
Feature | Client-Server (BAMOE 8) | Standalone (BAMOE 8) | Client-Server (BAMOE 9.2) | Standalone (BAMOE 9.2) |
---|---|---|---|---|
Architecture |
Deployed in KIE Server, accessed via REST API or JMS |
Direct invocation in same JVM |
Accessed via REST/gRPC or Kafka |
Direct invocation in same JVM |
Usage |
Models are executed on the server and results are returned via REST |
Programmatic instantiation of |
Models are executed on the server and accessed via REST or gRPC |
Programmatic instantiation of |
-
For more details on upgrading see the Client-Server projects section.
-
For more details on upgrading see the Standalone projects section.
Project generation comparison on BAMOE 8 and 9.2
Aspect | BAMOE 8 | BAMOE 9.2 | Notes |
---|---|---|---|
Tooling Approach |
Web-based project creation via Business Central UI |
CLI or IDE-based (e.g., VS Code) project generation |
v9 shifts from UI to developer-centric tooling. |
BAMOE Accelerators |
Not available |
BAMOE Accelerators: Predefined templates for BPMN/DMN projects |
Useful for rapid prototyping and domain-driven APIs. See Canvas using accelerators. |
Maven Archetypes |
Limited or not exposed directly to users |
Custom Maven Archetypes available via GitHub |
Enables consistent project scaffolding via CLI. |
IDE Integration |
Business Central UI |
BAMOE Developer Tools for VS Code extension |
Supports hot reload, debugging, and asset editing. |
Customization |
Through Business Central UI and XML descriptors |
Through |
v9 favors code-first, config-light development. |
Git Integration |
JGit-based virtual Git in Business Central UI |
Native Git support via IDE or CLI |
Encourages standard Git workflows. |
Comparison of BAMOE 8 vs BAMOE 9.2 Quarkus & Spring Boot
Feature | BAMOE 8 | BAMOE 9.2 |
---|---|---|
Quarkus Version |
Quarkus 2.7.x |
Quarkus 3.20.1 |
Spring Boot Version |
Spring Boot 2.5.12 |
Spring Boot 3.4.6 (for Decisions and Rules) |
Runtime Integration |
Kogito extensions for Quarkus and Spring Boot |
Native support for both Quarkus and Spring Boot |
Build Tooling |
Maven CLI, Maven + Business Central UI |
Maven CLI, Dev Services, Docker/K8s ready |
Configuration |
|
|
Deployment |
KIE Server or custom runtime |
Uber-JAR, native image, or container image |
Configuration comparison of BAMOE 8 and BAMOE 9.2
Configuration Area | BAMOE 8 | BAMOE 9.2 | Migration Notes |
---|---|---|---|
Maven Configuration |
Maven 3.6.x, Java 8 or 11; config via Business Central UI + |
Maven 3.9.6+, Java 17; CLI or container-based Maven config. |
Upgrade project to modern Maven + Java 17 standards. |
General Settings |
|
Defined in |
Move fully to Maven for build metadata; use |
Dependencies |
Managed via Business Central UI; tied to RHPAM BOMs or via |
Managed via |
Replace RHPAM BOMs with Kogito/Quarkus/Spring Boot dependencies. |
KIE Bases |
Declared in |
N/A |
N/A |
Data Objects |
Auto-generated POJOs in UI, editable in |
Manually defined in codebase or imported via JARs. |
Refactor and extract POJOs into Maven modules or shared libraries. |
Validation |
Real-time via UI on save/build. |
Via |
Use IDE + Dev Mode for live validation. |
Custom Tasks |
|
|
|
Deployments |
Managed by Business Central; Development: deploys to KIE Server manually or via UI; Production: deploys to KIE Server from CI/CD. |
Build with |
Use Quarkus/Spring Boot-native deployment pipelines. |
Persistence |
Configured via |
Configured via |
Migrate from XML-based configuration to Quarkus/Spring Boot-style persistence. |
Branch Management |
Git (JGit 5.x) via Business Central UI; VFS-based virtual Git. |
Managed via Git-based workflows using standard Git tools (e.g., Git CLI) and integrations with supported Git platforms such as GitHub, GitLab, and Bitbucket. |
Migrate to standard Git repositories and workflows. |
Project files comparison of BAMOE 8 and BAMOE 9
File/Directory | BAMOE 8 | BAMOE 9.2 |
---|---|---|
project.repositories |
Defines Maven repos for dependency resolution |
Replaced by standard Maven |
project.imports |
Lists Java classes imported |
Not present. Imports are now handled via source code or rule headers directly; simplified config. |
package-names-white-list |
Security: Lists allowed Java packages |
Not present. Replaced with standard module packaging & Maven/Java constraints. |
global/ directory |
Defines global variables (e.g., services, constants) |
Handled in code or rule headers; concept retained but implementation changed. |
.wid |
Defines custom Work Item Handlers |
Defines custom Work Item Handlers. See Upgrading Work Item Handlers to check what you need to address. |
patterns.json |
UI form templates for human tasks |
BAMOE Developer Tools for VS Code provides a command to generate forms, and BAMOE Quarkus Dev UI provides a form editor. See Form code generation functionality section. |
themes.json |
UI theming for Business Central |
BAMOE Developer Tools for VS Code, BAMOE Canvas and BAMOE Management Console do not support UI theming. |
src/main/resources/META-INF/ |
Metadata for KIE containers |
Still used for BAMOE v9 Business Service metadata files. |
kmodule.xml |
Defines KIE bases, sessions, and includes |
Not present. |
kie-deployment-descriptor.xml |
Deployment descriptors configuration, are applied during KJAR deployment. |
Configurations and activators are in Java and |
persistence.xml |
JPA configuration for process persistence |
Persistence is available for stateful workflows, and should be configure following the Configuring persistence for stateful Workflows guide. |
Test Scenario |
|
|