Categories
- All Categories
- 15 Oracle Analytics Sharing Center
- 15 Oracle Analytics Lounge
- 208 Oracle Analytics News
- 41 Oracle Analytics Videos
- 15.7K Oracle Analytics Forums
- 6.1K Oracle Analytics Idea Labs
- Oracle Analytics User Groups
- 76 Oracle Analytics Trainings
- 14 Oracle Analytics Data Visualizations Challenge
- Find Partners
- For Partners
Invoke an HTTP request using action in OBIEE 11g Fails

Hi friends,
Im in obiee 11.1.1.9.5, im trying to invoke an http request in OBI inorder to download the results according to the parameter that i pass in the URL.
My URL is below
http://remco.biapps.com:9704/Application11-ViewController-context-root/jersey/{year}
Where i have deployed my above REST PUT webservice in WLS server
If i pass year as 2009 then the records related to that year will download
http://remco.biapps.com:9704/Application11-ViewController-context-root/jersey/2009
If i copy and past the above url in the browser and if i pass the value like 2009 above then the results for 2009 will download in Excel.
My requirement is i need to invoke the above http request in obiee, so i selected http request and gave the above URL in it like below and saved the action
On Executing im getting the below message and download is not happening for my value 2012
Not sure what could be issue, as my url is working fine in the browser level if i give directly. Not sure why the problem arise if i invoke through OBI.
Kindly help me with ur suggestions.
Thanks in advance.
Regards,
Saro
Answers
-
Hi,
The download you are expecting from your call is in the browser itself?
Because I have the impression you expect something which isn't supposed to happen ...
I imagine you used a "invoke an HTTP request" action, right? This one is supposed to execute the call in the background as most webservices are supposed to be called. It's supposed to do the call in the background to start a process in a different app for example. It will not return the download file your webservice produce.
You maybe want to try with the "Navigate to a web page" action which is really like your test: putting the URL in the browser and go!
If your webservice manage the headers well and you check the checkbox to open in a new page the page will not stay open as it will directly open the "save as" dialog to save the Excel file.
0 -
Hi Gianni,
If i invoke it in the web page with hardcoded parameter value 2009 than i can get my Excel sheet download with 2009 records,
if i pass the url directly with the value like below
http://remco.biapps.com:9704/Application11-ViewController-context-root/jersey/2009
But instead if i pass the value @ runtime then it is not resulting in a value
http://remco.biapps.com:9704/Application11-ViewController-context-root/jersey/{year}
Normally i would pass year value in a braces to give {year}, year in runtime, but when i tried to give the url like above and define parameter with a parameter name like year and value to 2009, it is not taking the value 2009 and it is downloading excel without any values.
How to pass values @ the run time within BI for the year.
Thanks,
Regards,
Saro
0 -
Where is this action set? Where does the year come from?
You mean you have that in an analysis which also contains the year column? You want to use a presentation variable?
(I maybe missed the details but it's easier if you give the whole context )
0 -
Dear Gianni,
Where is this action set?
>> I just created this action set directly and executed it from the saved catalog.
Where does the year come from?
>> As of now im giving the year directly as a value in the parameter box in the action set instead of giving it in the url directly.
You mean you have that in an analysis which also contains the year column?
>> As of now i dint bring an analysis, just checking directly by creating the action set.
You want to use a presentation variable?
>> As now i dint use to pass the value from the prompt, even if i used i dont think we can use presentation variable for my prompt because
the action set parameter values accept either a direct value or session variable or repository variable.
Normally the generated URL as a part of my code compiled in jdeveloper is below
http://172.16.2.85:9704/Application11-ViewController-context-root/jersey/{year}
where {year} is the parameter value where i will normally pass a year while checking it in the browser window like below
http://172.16.2.85:9704/Application11-ViewController-context-root/jersey/2009
Ill replace {year} with the value 2009 in the browser to check whether the download is working fine or not and it works well as the download will happen.
Now in BI i need to invoke the above URL and hence for this like you said i created and checked with navigation to webpage in which i gave the below URL in the URL box: http://172.16.2.85:9704/Application11-ViewController-context-root/jersey/2009
In the above case in BI, I gave the value directly as 2009 and saved the action and while executing the action from my saved catalog, it is downloading the excel with all values related to 2009 and that is fine.
What i did is inorder to check with the run time parameter value instead of hardcoding i changed the url in my webpage actionset in bi to below
http://172.16.2.85:9704/Application11-ViewController-context-root/jersey/{year}
and in the parameter box i specifed parameter name as year and in the value i gave value directly as 2009. After this if i execute this action and check means it is downloading the excel but it is empty and from this it is clear that parameter value is not getting passed.
Regards,
Saro
0 -
Well, in actions parameters when navigating to URL are accepted only as part of the query part of the URL, which means after a ? .
In your case you want to use it to build the URL itself, this is where the action will not allow you to use the parameter as currently implemented.
So, depending on the final usage of your action (I doubt you will just keep it as action in the catalog or I really don't see why to make an action for that) you maybe want to just build the link as HTML either by concatenating things using a column in an analysis, a variable etc.
Right now you can't use the parameter implemented in actions without having something rewriting / redirecting a link like .../jersey?year=2009 to .../jersey/2009 .
0 -
Gianni,
If thats the case then i need to change the URL interms of accepting query part like something
http://172.16.2.85:9704/Application11-ViewController-context-root/jersey?
so that i can subsitute year paramater for the above query part of my URL. Is my understanding is correct.
Saro
0 -
With an action of type "navigate to a web page", the action options provided (defining the name, the default value etc.) work for the query part of the URL, so yes: changing your service to understand a url like jersey?year=2009 would work.
You can try it directly yourself: add a parameter and try to save: OBIEE doesn't let you save if the parameter isn't in the query part of the URL.
0 -
Thanks Gianni,
After changing the URL to below from the webservice side, i can pass the parameter value in the parameter box of my action set and can get the results in the excel download.
http://172.16.2.85:9704/Application11-ViewController-context-root/jersey/excel?year=@{year}
My next challenge is i need to pass this year value from the prompt, in which the action parameter value box has the option of giving(direct value or session variable or request variable). I hope i gotto try with the request variable. Not sure whether the presentation variable will work or not. Gotto check.
Thanks for your valuable idea:-)
Regards,
Saro
0