Fuse 6 is no longer supported
As of February 2025, Red Hat Fuse 6 is no longer supported. If you are using Fuse 6, please upgrade to Red Hat build of Apache Camel.6.2. Configuring Policy
The Policy definition is comprised of two aspects:
- Policy that the service provider requires
- Policy support that the service consumer provides
You can define the policy that a service requires by annotating the service's configuration in the SwitchYard application descriptor. You can also define how a service is consumed through a gateway binding, which effectively determines how the policy requirements are satisfied or provided. The SwitchYard runtime takes care of determining whether the consumer satisfies the policy requirements by evaluating the configuration of the application and the runtime state of the messages exchanged between the consumer and provider. Here is an example configuration:
<composite name="policy-transaction"> <service name="WorkService" promote="WorkService"> <camel:binding.camel configURI="jms://policyQSTransacted?connectionFactory=%23JmsXA&transactionManager=%23jtaTransactionManager&transacted=true"/> <camel:binding.camel configURI="jms://policyQSNonTransacted?connectionFactory=#ConnectionFactory"/> </service> <component name="WorkService"> <implementation.bean class="org.switchyard.quickstarts.demo.policy.transaction.WorkServiceBean" requires="managedTransaction.Global"/> <service name="WorkService" requires="propagatesTransaction"> <interface.java interface="org.switchyard.quickstarts.demo.policy.transaction.WorkService"/> </service> <reference name="TaskAService" requires="propagatesTransaction"> <interface.java interface="org.switchyard.quickstarts.demo.policy.transaction.TaskAService"/> </reference> </component> </composite>