使用 java 以编程方式下载 Oracle Business Intelligence 报告
Posted
技术标签:
【中文标题】使用 java 以编程方式下载 Oracle Business Intelligence 报告【英文标题】:Programmatically downloading Oracle Business Intelligence report using java 【发布时间】:2011-08-16 13:18:47 【问题描述】:我需要使用 java 将 OBI 报告下载为 csv。当我进入
http://<my_host>:<my_port>/analytics/saw.dll?Go&Action=Download&path=<my_path>&Format=csv
在浏览器中,出现下载弹出窗口,我可以下载文件。
但是,当我尝试使用 java 下载报告时,它会下载一个 html 内容说 “Oracle BI Presentation Services 不支持您的浏览器。”
这是我使用的一段代码:
URL url = new URL("http://<my_host>:<my_port>/analytics/saw.dll?Go&Action=Download&path=<my_path>&Format=csv");
URLConnection urlc = url.openConnection();
urlc.addRequestProperty("User-Agent", "Mozilla/4.0");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
bos = new BufferedOutputStream(new FileOutputStream("file.csv"), 1024);
bis = new BufferedInputStream(urlc.getInputStream());
byte[] data = new byte[1024];
while ((x = bis.read(data, 0, 1024)) >= 0)
bos.write(data, 0, x);
那么,如何下载报告?
【问题讨论】:
【参考方案1】:尝试使用完整的 UA 字符串;解析UA的javascript对它很敏感。
当您discovered elsewhere 时,您遇到了更多问题,登录页面带有 javascript 重定向到实际页面。
【讨论】:
以上是关于使用 java 以编程方式下载 Oracle Business Intelligence 报告的主要内容,如果未能解决你的问题,请参考以下文章
按下时以编程方式移除 UIBarButtonItem 上的灯光?
约束布局中以编程方式添加的按钮将忽略约束 - Android