Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Standard JBI routing, for example, a binding component specifies a particular service engine to dispatch to, or the bus matches the Normalized Message XML content to a service's WSDL
  2. Content-based routing using XPath expressions on the Normalized Message XML content
  3. Rules-driven routing using the Drools service engine
  4. Script-driven routing using the Scripting service engine
  5. Java code can perform routing using the ServiceMix POJO Support
  6. You can use a BPEL service engine to perform routing (among other things)

What transformation options does ServiceMix provide?

Many of the same options as in the routing answer above. For example, messages can be transformed with XPath/XSLT, or via a script like Groovy, or via a Java class, or BPEL, etc.

Which options allow a declarative approach for routing/transformation?

Pretty much everything except the Java code approach. Otherwise, the script or configuration typically exists in files outside your Java code, but inside your JBI Service Unit. In other words, it is declarative, but not necessarily editable at runtime without redeploying the service.

Specifically:

  • JBI routing, when configuration is needed, is configured in an XML file in the Service Unit
  • XPath/XSLT routing and transformation uses an entry in the XML file and a separate XSLT file in the Service Unit
  • Drools rules are typically defined in an XML file bundled in the Service Unit
  • Script-driven routing and transformation can use scripts in the XML file in the Service Unit
  • BPEL process definitions are packaged in the Service Unit

Orchestration

Security

Performance

...