I have a couple of soultions for consuming web services using PL/SQL.
The problem has always been that every so often the web services referenced by these articles disappear, so I have to modify the articles to use a different web service. Well, I got sick of people pulling the plug on their web services, so I created one of my own that just adds two numbers together. The articles now reference that web service, so it should be a little more stable.
In the process of doing the alterations to the articles I had a lot of trouble with UTL_DBWS. I’m not at all convinced by this solution. On the surface it seems OK, and it certainly seemed to be OK in 10gR2, but it seems very flaky in 11gR2. The old 9i method seems a lot more stable, and you have complete control as you are doing everything yourself.
Of course the real problem with web services and PL/SQL is people look at their WSDL file and then mail me asking what the hell they do with it. I think I’m going to start suggesting they pass it to the Java guys and handle it in the middle tier. Problem solved.