Oracle 11g: Native Web Services

Just stumbled across an interesting paragraph in the New Features in Oracle XML DB for Oracle Database 11g Release 1 about Database Native Web Services.

The feature didn’t get that much attention yet on the Oracle 11g related blog postings, but according to the description it’s a real nice improvement compared to the 10g solution.

So what is it all about?

It allows you to publish your PL/SQL packages/procedures/functions as a web service with zero coding and zero deployment effort!

Maybe you have already heard of the SOA (service-orientated architecture) hype and probably your manager or the Java guys have already asked you how you want to participate with your old legacy PLSQL/Oracle APEX code in the “new and everything is now better” world of SOA and BPEL. This native integration of web services into the database is the answer. Probably you even have to do less work then the Java guys to expose your business service… 😉

Another goody is that you don’t need the additional application server infrastructure anymore as you had to have it with the existing JDeveloper solution which generated a Java wrapper for your PL/SQL package. That’s especially useful in an Oracle APEX environment where you don’t need an application server anymore. Another moving piece is gone…

Really looking forward to try out Oracle 11g myself.

See also my related posting Oracle 11g more infos.

Update: Check out Paul Gallagher’s blog posting First Tests of 11g Native Web Services for more information about this feature.

10 thoughts on “Oracle 11g: Native Web Services

  1. Hi Patrick,

    That is a cool feature. I hadn’t seen that yet.

    Just another month (hopefully) and we’ll get our hands on the new version.


  2. Patrick,

    Native Database Web Services is the feature I was invited into the 11g beta program to test.

    It works the way you described it. The only thing you have to do is grant execute on your procedure to a role, and it becomes available as a web service.

    You can also have it execute select statements – with bind variables. That’s a bit more complicated to use.

    I’m not a web services expert, but I was able to call the web services from JDeveloper, Visual Studio, and other environments.

    It’s another nice feature for people who like to do everything inside the database.


  3. This looks very promising to me.
    Does user has ability to set name of such web service? I mean: How it will be visible for external consumers?
    How about utilizing external web services within PL/SQL?

  4. I hope they get it better documented then the UTL_DBWS package.
    UTL_DBWS looks nice out of the box, still works good with very easy webservices, but might make you unhappy when using webservices with more complex requirement,s e.g. multiple parameters, …
    Furthermore utl_dbws still needs loading additional java-code using loadjava.
    Best regards,

  5. Thanks for this, Patrick.
    First feature of 11g that really makes me want to use that release!

  6. Hi Patrick,

    I want to call the webservice through PL/SQL . I have XE database.I am using APEX . Want to implement the Single sign on concept(no need to login) from the system. It’ll go directly call webservice for login/pwd information(system user/pwd) and redirect to the requested page in the oracle apex application.
    Any Idea?
    Please let me know. how to do that? Becoz in XE database there is no package called UTIL_HTTP and UTIL_DBWS.

    Rahul Bhandari

  7. Hi Patrick,

    I’ve got multiple 11g instances on a single server, how can I setup/access a specific native 11g Apex environment (not using Apache) hosted on the different 11g databases?



Comments are closed.