此内容没有您所选择的语言版本。
Chapter 2. kie-eap-distribution-bpms-layer package
The Integration Pack contains a .zip file which contains JBoss EAP modules for
Red Hat JBoss BPM
(JBoss BPM) and Red Hat JBoss BRMS
(JBoss BRMS) integration.
Apply the package
The package will be applied by the SwitchYard/BRMS Integration Pack installer jar.
Contents of the JBoss BPMS layer integration package
The following table shows the relationships between different components in BxMS and JBoss Fuse. Expansion of the table entries can be found below the table.
Camel | SwitchYard | |
---|---|---|
JBoss BPM |
JBos BPM can invoke Camel
|
JBoss BPM can orchestrate SwitchYard services
|
Camel can invoke JBoss BPM | SwitchYard can invoke JBoss BPM | |
Rules |
Rules does not use Camel.
|
Rules does not use SwitchYard
|
Camel can use Rules | SwitchYard can call Rules |
JBoss BPM can invoke Camel
JBoss BPM has a Camel WorkItemHandler. See JBoss BPM Suite Development Guide for more information.
Camel can invoke JBoss BPM
There are three interfaces that can be used to invoke JBoss BPM from Camel:
JBoss BPM can orchestrate SwitchYard services
The JBoss BPM process definition must be embedded in the SwitchYard application, not on a remote JBoss BPM server.
JBoss BPM will not execute on a remote JBoss BPM server. It will only run via jars provided in the integration pack.
See the provided quickstart
EAP_HOME/quickstarts/fuse-integration/switchyard-bpm-service
for an example.
SwitchYard can invoke JBoss BPM
The following scenarios have are supported:
- Invoke/signal local JBoss BPM process defined as a SwitchYard service.
- Invoke/signal remote JBoss BPM process defined as a SwitchYard service.
- Invoke/signal a remote JBoss BPM process and insert/execute rules locally as a SwitchYard service using rules definitions resolved as KIE artifacts using Maven.
JBoss BPM process can be embedded in the SwitchYard application or it can be on a JBoss BPMS server on a different JVM.
If the process is embedded, the engine used must be the .jar file that is installed as part of the Integration pack. If the JBoss BPM engine is running locally in the JBoss Fuse JVM, then it can only be used to orchestrate SwitchYard services and can not be used to perform other tasks.
If the JBoss BPM process is not embedded, the invocation must occur via the SwitchYard JBoss BPM component. In this case, the user does not need to manage the interaction.
Camel can use Rules
You can insert facts and execute rules locally in JBoss Fuse using a Camel route. Rule definitions are resolved as KIE artifacts using Maven.
Camel can invoke Business Rules when the Karaf container is used. This functionality is not available on JBoss Fuse on JBoss EAP. It will be made available in a future release.
For use by JBoss BPM, the Rules must be in a Maven repository where the Kie scanner can find them. The Maven repository can be on the same machine or a remote machine. If the repository is on a remote machine, the rules will be added to the local repository during rules resolution process.
The Rules engine can be placed on the same machine as Camel is installed on, or on a remote JBoss BRMS execution server. For the local engine, binaries are provided by the Integration Pack. For the remote engine, the rules can be invoked using a mechanism such as the REST interface provided by JBoss BRMS.
SwitchYard can use Rules
You can insert facts and execute rules locally as a SwitchYard service using rules definitions deployed with the application. This makes the rules static and will require a rebuild to change them.
Alternatively you can insert facts and execute rules locally as a SwitchYard service using rules definitions resolved as KIE artifacts using Maven.. This repository can be either on the same machine as JBoss Fuse, or on a remote machine. Rules stored in a Maven repository can be updated at runtime using Kie scanning.
The Rules engine is installed on the JBoss Fuse server as part of the integration pack installation.