In an Oracle Data Integrator “Package” it is possible to invoke web services using the OdiInvokeWebService activity. However, a while back I noticed that it didn’t work in ODI 11.1.1.5.0.
The problem was that the request message wasn’t send out correctly by ODI: the XML elements were put into an empty namespace. For example, if you happen to have a web service that needs the following XML as input:
<?xml version = '1.0' encoding = 'UTF-8'?> <ns1:inputElement xmlns:ns1="http://www.whitehorses.nl/test"> <query>some data</query> </ns1:inputElement>
ODI would sent out:
<?xml version = '1.0' encoding = 'UTF-8'?> <inputElement xmlns="http://www.whitehorses.nl/test"> <query xmlns="">some data</query> </inputElement>
Clearly this “query”-element is causing problems now because of the empty namespace. This “feature” is now known as:
BUG 12702144 – ODI-20161: STANDARD REVERS-ENGINEERING FAILED IN ODI 11.1.1.5
BUG 12784671 – ODI 11.1.1.5 INVOKEWEBSERVICE GENERATES WRONG PAYLOAD FILE
Luckily last week it was finally solved. The SR took a while (I guess they were busy with OFM ps 5
). So if you happen to run into this problem, and are using ODI 11.1.1.5.0, or 11.1.1.5.1, there is now a patch available. For ODI 11.1.1.5.0 OUI installs, you first have to patch to 11.1.1.5.1 using patch 10288265. Afterwards, there is the one-off interim patch 13329774. These patches can of course be downloaded from the Oracle Support website.
Happy integrating!


Whitehorses is specialized in succesfully implementing Oracle SOA solutions: BPEL, OSB, WebLogic & BPM
{ 13 comments… read them below or add one }
Hi Laurens,
Is it possible to use the OdiInvokeWebService activity to invoke WS_Security enabled webservices? Can you provide pointers on how to achieve the same?
Hi Eric,
That is a very good question. Myself I haven’t encountered this requirement in projects yet. OdiInvokeWebServices does support Basic Authentication web services (so providing a username and password), but as far as I know that’s it.
I think the solution should be sought in some kind of gateway, which proxies the web service request and takes care of the security. For example you can look into Oracle Enterprise Gateway. Or -if you have some 10g licenses lying around- the Oracle WebSerivce Manager 10g (OWSM 10g). Alternatively: check out Apache Rampart, a simple gateway solution can easily be created using this module. And that is free
Good luck!
Hi,
we migrate from ODI from 11.1.1.3. directly to 11.1.1.6.
All migration steps has success result, but when we run scenarios with WS calls, we get error. This error is the same, which you report.
We try apply patch 13329774, but patch cannot be applied, because patch get result that this patch not needed.
I think, that error from 11.1.1.5 was transferred to new version. Have you any ideas to resolve it ? we prepare data for creation SR, but this is long way to success (with Oracle metaling “experts” ).
Than you
Petr S.
Hi Petr,
The interim patch 13329774 is a “backport”/merge for bug BUG 12702144 and BUG 12784671. These two bugs are scheduled to be solved in version 12.1.2.0. So it is sadly not solved in 11.1.1.6.
There are two options now:
1) Either request Oracle Support for a port of interim patch 13329774 for 11.1.1.6 (refer to the Support Engineer that you are facing the same issue as in SR 3-4507890191).
2) Downgrade to 11.1.1.5.1 in the meantime to work around this problem for the time being.
Good luck!
Thank you for your info.
I create SR, where I refer to SR 3-4507890191.
I will be surprised, if oracle support engineers prepare interim patch. I think, that the bug reported on one version (direct previous version) has interim patch, but patch not included to new version….:o(((.
We go to 11.1.1.6 because we start new phase on DWH development, and we like to feature, where variable values will be displayed in ODI log. The next reason is fixing another bugs in ODI 11.1.1.3.
Have a nice day.
Hi Lourens,
I have some news.
- we create SR, and identify potential generic bug (with high probability) – SR num: 3-5582631221
- we test migration to 11.1.1.5.1 version, but error is same (because 11.1.1.5 use new WS library same as 11.1.1.6)
- we identify error (header letter size mismatch, non standard SOAP action header, etc..)
We looking for some simple workaround (such as proxy service).
Have you any ideas ? (some plugin into ODI, which can call standard web service …)
Thant you
Petr
I can’t really get what goes wrong … Let’s keep this offline, I’ll send you a mail.
Hey there,
Can you guys see some workaround to call web services in ODI, without using the OdiInvokeWebService function?
Thanks!
Good question. From a ODI package you can maybe use some Java call (check: http://askankit.blogspot.nl/2010/09/call-java-jar-methods-from-odi.html), or you might create some KM and do it from the database.
But my question would be: why don’t you want to use OdiInvokeWebService?
Hi Laurens ,
I am trying call odi scenario from bpel process. But I am very new to BPEL process. I have downloaded Jdeveloper 11.1.2.3 and Axis2.war file (1.6). Then I installed Jdeveloper which is lies on the weblogic server (E:\Oracle\Middleware\jdeveloper ). Now what i have to do ?
Please suggest.
Hi linkan,
First of all, I don’t think the Axis war is necessary anymore in ODI 11g. Also, be aware that the jDeveloper you have to download for SOA development has to be the exact version as your SOA Server. For example, if you run SOA Suite 11.1.1.6, you need jDeveloper 11.1.1.6. Use the “Updates” feature in jDev to install the SOA composite IDE and you’re set.
Refer to this forum thread: https://forums.oracle.com/forums/thread.jspa?threadID=1594350 here Sydney explains exactly how to invoke a scenario in ODI 11g.
Thanks Lauren, for the 1st response.
So what I understand is that i have to install SOA Suite 11.1.1.6 and jDeveloper 11.1.1.6.
After that i believe i need not to deploy anything in weblogic server. Right ?
Now i am following below lik to call one odi scenario. This link is quite old i believe but there is no other link available. http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/odi/10g/10135/odiscenario_bpelcallback/odiscenario_bpelcallback.htm
True, those links don”t work. However, the information is in the thread itself: the WSDL for the OdiInvoke webservices is available on your ODI agent: http://agentHost:port/oraclediagent/OdiInvoke?wsdl, Sydney then gives some examples on how to invoke some scenarios.