I stumbled across a great article on developerWorks that outlines what’s new in WPS v6.1 and a second article on whats new in WID v6.1. It’s nice to see IBM come out with a detailed article of whats changed between versions aside from the usual useless marketing banter.
WebSphere ESB improvements
New mediation primitives let you extend the reach and capabilities of these products. One new primitive enables mediations to use business object maps in the mediation flow. Fan-in and Fan-out scenarios are supported through new primitives for splitting one message into multiple parts, or aggregating several messages into one. ServiceInvoke is a new primitive to invoke a service within a mediation flow.
If you used WESB in the v6.0.x stack, it was a crippled solution. It was designed strictly for mediations of a single request to a single response. You were restricted to using an old RAD based XSLT editor that was great at losing your mapping and frustrating to use for large data objects. You couldn’t access the nice ‘candy’ UI of the Business Object Mapping runtime and you had to write custom snippets to invoke multiple services in a single mediation flow.
With these features in v6.1, it narrows the gap between when to choose a ‘Module’ and when to choose a “Mediation Module”. Mediation modules can now perform a solid degree of choreography. It also provides smaller businesses with the ability to leverage the cheaper license cost of WebSphere Enterprise Service Bus to get their foot into the door with IBM software.
WSDL and XSD support
WebSphere Integration Developer V6.1 has several improvements for the handling of WSDL and XSD. Additional XSD constructs are now supported, such as xsd:choice, the xsd:any family, and xsd:union. Validation is improved as well, using the same WSDL validator as IBM Rational Application Developer, enabling better performance.
XSD support in WID/WPS has always been a hot topic with me. I spent a lot of time working with these APIs when I was a member of the Test Client team at the IBM Toronto Lab and I know far too much about XSD and limitations. I’m happy to see that we’ve not got support for the more complicated types and I hope that the xsd:any support is actually a first class citizen in this release.
Integrated Test Client
New capabilities enable the automation of testing. You can author test cases manually or from a test client invocation trace. You can organize individual test cases into test suites that belong to a test project. Tests can then be deployed to the integrated test server and executed. In addition, you can use ANT scripts for automatic invocation. You can create a component test project that holds test suites, execution traces, configurations and emulators. The test suite is made up of test cases, based on one of two available test patterns: operation-level testing or scenario based testing.
Of course, I have to mention the new test suite support from my old team. This was a feature request I heard every day from every customer over the last three years, so I’m ecstatic to see it finally there. The test client can now transform from your ‘one-off’ development test environment to a fully fledged testing solution.
Unfortunately, I don’t get the chance to use of these features at my current client. We’re a 6.0.2.x shop with no plans on upgrading in the near or distant future.