Verse Of The Day

Wednesday, October 13, 2010

Oracle Service Bus and JCA Adapters

If you've spent any time using Oracle's SOA suite, the first thing you will notice is their toolset kind of blows donkey. It's a half-baked patchwork of crap - some of it written by them, some of it bought from other companies and bastardized. And chock full of interesting bugs and random crashes.

So the first thing I noticed when working with the OSB for the first time (Oracle Service Bus, a.k.a. BEA Aqualogic service bus, or ALSB) is that the "Workshop" tooling lumps everything as either a "business service" or a "proxy service". That's all fine and good, but when I first started reading about integration patterns, SOA, and service buses years ago, a lot of what I learned about was JCA adapters. Where are the JCA adapters!?

If "Workshop for Weblogic 10g" is your only Oracle SOA IDE, then you might think JCA doesn't exist anymore. Oh, but it does. And chances are you need it. So here comes that patchwork - that menagerie of mismatched pieces. You need to use Oracle JDeveloper as well as Workshop for Weblogic - 2 IDE's to accomplish your 1 task.

Ugh, seriously?

This tutorial and sample, while well written, confirms it in all it's ridiculous glory. You need to launch JDeveloper to create the JCA adapter. Then you launch Workshop for Weblogic and create a business service or proxy service in your OSB project. Within that service, you have to import the WSDL that you generated from JDeveloper (as well as any XSD's and TopLink mappings).

Maybe next time Oracle will put all that into one tool? Though since they bought Sun, they have aquired even more application servers and tools, so next time you'll probably have to launch JDeveloper, Workshop, and NetBeans to get a simple service working.

No comments: