Sunday, November 25, 2007

Axis2 now supports CORBA services

Axis2 has a new module that makes it possible to take an existing CORBA object and automatically expose it as a Web service. Developed by Eranga Jayasundara, it includes an IDL parser which is used to automate the mapping from the incoming XML message to IIOP and back. We use Apache Yoko underneath.

This used to be the territory of expensive products (such as Iona Artix) but its now completely free. In fact the mapping appears to be more complete than that peformed by the proprietary products- and the performance better too.

Eranga (who did this as his MSc project at the Univ. of Moratuwa and is currently working at the ICT Agency in Sri Lanka) has written an article on WSO2's OxygenTank explaining how the module works and how you can use it.

We're not quite done with this yet- we're also working to integrate this code under the Axis2 client API- once done that means you'll be able to talk to either a WS-* Web service, an HTTP service, a Java object or a CORBA object using the same API. In fact, once we're done any Apache WSIF style binding will be supported directly under the Axis2 client API.


Unknown said...

Sanjiva, don't bite the hand that feeds you, and give credit where credit is due. Apache Yoko wouldn't even exist without the significant contributions of engineering talent from IONA Technologies who built the CORBA capabilities into Yoko that your solution takes advantage of. For you to turn around and make it sound like some student invented all this by himself is not at all accurate, is it? And to take shots at Artix is low as well, given that IONA fed Artix technology into Yoko such that Yoko learned greatly from lessons learned by building Artix. Without Artix, you'd have no solution!

Sanjiva Weerawarana said...

Steve, sorry, I hadn't noticed this comment until just now. Otherwise you'd have gotten a reply much earlier.

I'm utterly shocked and disappointed by your comment.

First of all, I did acknowledge that it was built on Apache Yoko: "We use Apache Yoko underneath."

Do you think I need to remind everyone that Yoko was an Iona contribution? Why?? Its now an Apache project and I damned well gave due credit.

For you to claim that I said this was all a student's work is an utter joke. A while ago I pointed out that Apache Neethi was originally done by another student of mine and Dan Diephouse got all over me for saying that- his point was that its now an ASF project and that's all that matters.

As for your claim that I am taking below the belt shots at Artix, I suggest you check the performance and capabilities of Web service enabling with the Iona stuff and with this and then tell me its a low shot. Iona charges like $25k/server for that stuff right? Getting even similar (if not better) performance for $0 is a damned good deal for CORBA users.

And of course you know very well that there are other open source ORBs too .. we used Apache Yoko because I'm always personally biased towards using ASF stuff vs. other stuff.

I still cannot believe you'd make a comment like that.

Unknown said...

Hi Sanjiva,

My God. Oh no. Please no.

I am pretty adamant that IIOP, REST, and SOAP are not merely plumbing details but fundamental to the architecture of the systems you build.

What chance does my poor CORBA component stand when it's suddenly exposed as a Web Service? Very little - it simply wasn't designed that way, for a start I made it stateful.

I'm going to call this out again - WSDL is the single most harmful thing that ever happened to Web Services. WSIF is the second most harmful thing. And this is probably the third most harmful.

Please stop being one of those vendors that treats Web Services as commodity plumbing and embrace the platform wholeheartedly.


Unknown said...

Sanjiva, I'm sorry you feel that way about my comment, but I'm simply telling you how your post came across, and I stand by my comments. If you're truly shocked and disappointed then perhaps you need to re-read your own post with an open mind.

First, other open source ORBs != Yoko. Yoko isn't just an ORB; we both know that. Saying that you could have just used another OSS ORB isn't at all accurate.

And yes, I believe that since you're taking shots at IONA, it's only fair that you should remind readers of their very significant contributions to Yoko, since not everyone is aware of that. This is especially true that you don't in any way acknowledge that what you've built would not have been possible without Yoko, otherwise you would have built it years ago. Like I said, you are in effect gaining significant benefit from IONA forging the way ahead with Artix and then building Yoko based on lessons learned.

Since you claim to be such a fan and supporter of OSS, why not act in a way that fosters community among your fellow contributors, including the guys from IONA, rather than being deceptive and divisive in postings like these? Frankly, I'm more shocked and disappointed that you would engage in such questionable practices.

Sanjiva Weerawarana said...

Your beef with me seems to be that I didn't thank Iona for having donated Yoko to Apache.

OK here goes: Apache Yoko was a donation from Iona and if not for that it would not have been so easy for us to plug in CORBA services to Axis2. Thank you all the wonderful folks in Iona who contributed to that work (and the managers who approved its donation etc.)!

Feel better? Good.

However, I think you should go back and look at how open source works, especially in Apache.

We don't go around demanding credit. We just give and be happy about that giving. For example, ASF projects typically remove @author tags from Java code. We care more about people happily using our code than getting credit for it.

[BTW, did you guys in Iona ever ship Apache SOAP for anything? Then you owe thanks to Matt Duftler and me .. and of course IBM for having paid our salaries .. as we wrote most of the original code in Apache SOAP.

Nahh. You don't need to. We donated it to Apache and our thanks come from seeing lots of people happily using it (even now- 7+ years later).]

Unknown said...

Sorry, Sanjiva, but you continue to miss the point. It's not that you didn't thank IONA. Rather, it's that you took unfair digs at an IONA product, claiming yours to be superior, when in fact it's the guys and technology from IONA who made your product possible.

Never mind that comparing your CORBA support to Artix is very much an apple-to-oranges comparison. Artix provides so much more than simple CORBA integration.

Perhaps you should review what open source means. Last I checked, it required community. Do you build community by taking lame cheap shots at the guys you're supposedly buddying up with to build the open source software? Somehow, I don't think so.

J├╝rgen said...

Actually, the Axis2 Corba module has no dependencies to Yoko. I tried it with JacORB and the JDK 1.6 Orb and it works fine with both.