SwitchYard Release Overview - 0.7

Version 3

    Welcome

    Thanks for stopping by to check out SwitchYard.  This article provides a brief summary of what's inside SwitchYard 0.7.  If you are completely new to SwitchYard and wondering what it is, this blog post provides some good background and pointers to additional information.

     

    Getting Started

    There a number of options for checking out what SwitchYard has to offer.  Listed in order of increasing time investment:

    Feature Highlights

    You can find a summary of the new features in the 0.7 release below.  For complete information on all SwitchYard features, check out the docs.

    Camel Modularization

    Prior releases of SwitchYard camel with "one big ball" of Camel support.  As we added more and more support for Camel features and components, this became a bit of a drag from a Maven dependency standpoint.  For 0.7, we have split out each Camel gateway component into a distinct maven module, which allows you to depend on just the support you need for your application without dragging the rest of the world in.  If you're upgrading 0.6 apps to 0.7, be sure to update your Maven dependencies to reflect the new modularization.  The docs have been updated for each Camel gateway and you can always rely on the quickstarts for an example as well. 

    Test Modularization

    Similar to Camel, prior releases of SwitchYard featured "one big ball" of text support in the form of mixins.  If you're not using JMS in your app, you shouldn't have to drag in JMS test dependencies.  Each MixIn has been broken out into it's own maven module.  Information on Maven dependencies for each MixIn type can be found in our test documentation.  If you have used MixIns with a previous version of SwitchYard, check the documentation for the correct dependencies to add to your application's pom.xml.

    Certificate-Based Authentication

    A new certificate-based authentication option has been added to our security policy support.  More information on this feature can be found in the security docs and in the policy-security-cert quickstart.

    Drools and jBPM 6

    The Rules and BPM component have been updated to support Drools and jBPM 6 Alpha respectively.  The good news is that the runtime is backward compatible with Drools and jBPM 5, so you don't need to rewrite your rules and process definitions when upgrading to SwitchYard 0.7.  The even better news is that you can now take advantage of fancy new Drools 6 features as well.  The configuration model in SwitchYard has changed a bit to accommodate the upgrade and we've increased the amount of flexibility you have in assigning inputs and output to your rules and BPM services.  The important differences are outlined in this article.  As always, check out the documentation and quickstarts for examples of how things have changed.

    SwitchYard OpenShift Cartridge

    We now have a dedicated SwitchYard cartridge on OpenShift. This means you can now add SwitchYard functionality to JBoss AS 7 and EAP 6 applications within OpenShift.

    SOAP address override

    By default, SwitchYard uses the SOAP address setting in a web service endpoint's WSDL for outbound communication.  Sometimes you want a little more flexibility in how this is defined, so we've added a configuration option for overriding the SOAP address in the binding definition in switchyard.xml.

    AS 7 Domain Mode Support

    You can now run SwitchYard in domain mode within AS 7.  The SwitchYard distribution and installer have been updated to include domain mode configurations with SwitchYard enabled.  Our AS admin console extension has also been updated to work in domain mode.

    RPC Literal Support in SOAP Gateway

    We have supported document literal (doc/lit) and document literal wrapped for some time in our SOAP gateway, but have not supported rpc literal until now.  For those who refuse to embrace document-oriented service interactions, we salute you! 

    JPA Gateway

    If you prefer to go the JPA route instead of raw SQL when interacting with databases, the JPA gateway is here in 0.7 to satisfy your needs.  The gateway allows you to consume and store JPA entities in the data source of your choice and is based on the Camel JPA component.  Check out the docs for more info or the quickstart if you want to play around with a working example.

    Mail Gateway

    A Mail gateway binding based on Camel's Email component has been added in 0.7.  You can receive messages via IMAP or POP and send messages via SMTP.  Check out the docs for more info or the quickstart if you want to play around with a working example.

    AMQP Gateway

    We received a fantastic community contribution adding support for AMQP bindings based on Camel's AMQP component.  The component has not been added to the distribution yet, but a quickstart is available if you'd like to kick the tires inside our test framework.

    Updated Tooling

    Our Eclipse tooling has been updated to support all the features in 0.7 and is now compatible with Eclipse Juno, JBoss Tools 4.0, and JBDS 6.0.