Skip navigation
2012
Keith Babo

SwitchYard Tooling Preview

Posted by Keith Babo May 23, 2012

The SwitchYard team has been hard at work in the 0.5 release crafting some cool Eclipse-based tooling for creating SwitchYard applications.  The goal of the tooling is twofold:

 

  1. Provide a visual representation of a service-oriented application.  Integration and SOA apps can get quite sophisticated and it's easy to lose sight of the composition of your application without a visualization.
  2. Streamline the development process by making it quick and easy to create service-oriented applications from a visual representation.

 

We still have a ways to go, but I think what's there now is quite impressive.  Here's a quick video I put together showcasing some of the features being worked on.   Do your eyes a favor and watch it expanded in HD and not embedded.

 

https://vimeo.com/42670606

 

 

 

As always, we would love to hear your feedback.  Swing by the forums and let us know what you think.

 

http://community.jboss.org/en/switchyard?view=overview

In SwitchYard 0.5, a new and convenient way to map variables into and out of your jBPM processes has been introduced.  The same goes for mapping variables into Drools globals.  This is done by leveraging the MVEL expression language.  Via XML or Java annotations, you can easily navigate your SwitchYard Exchange, Context or Message objects and pull out the data you want to set into your process or rules.

 

Here's a quick example using XML (you can also use the @Mapping annotation):

 

<implementation.bpm>
    <parameters>
        <mapping expression="context['org.switchyard.messageId']" variable="messageId"/>
    </parameters>
    <results>
        <mapping expression="message.content" variable="payload"/>
    </results>
</implementation.bpm>

 

And here's one using annotations (you can also use the <mapping/> element):

 

@Rules(globals={
    @Mapping(expression="exchange.serviceName.localPart", variable="service")
})

 

To learn more and see more complete examples, please refer to the Mapping Parameter/Result Variables section of the BPM Services documentation, as well as the Mapping Global Variables section of the Rules Services documentation.

 

Enjoy!