У меня следующий вопрос:
В настоящее время я работаю с программным обеспечением (MicroStrategy, BI), которое имеет функцию, которая экспортирует отчеты в PDF, работает примерно так:
каждый отчет имеет уникальный идентификатор, поэтому вы выбираете отчет для экспорта, и с помощью jsp я отправляю идентификатор этого отчета в инструмент экспорта, и он генерирует полный URL-адрес с некоторыми параметрами, которые сервер MicroStrategy будет считывать для создания PDF.
Я пытаюсь перехватить этот PDF-URL и отправить его в метод Java, который сохранит этот PDF-файл на жестком диске, ничего не запрашивая у пользователя.
Моя проблема в том, чтоЭтот URL-адрес не генерируется мгновенно, требуется некоторое время, И, в процессе выполняются некоторые перенаправления.
Итак, после всего этого разговора, как я могу захватить этот чертов URL?
Что я делаю, так это загружаю pdf в iframe, а затем извлекаю url с помощью js-кода, который я нашел при поиске, присваиваю его переменной JSP и затем, когда у меня есть pdf url,вызовите метод Java.Но это не работает.
Функция JavaScript такова:
<script language="text/javascript">
function getSrc()
{
var CurrentUrl = document.getElementById('miframe').contentWindow.location.href;
if(currentUrl.substr(length-5)==".pdf")
{
return currentUrl;
}
else
{
setTimeout(getSrc(),5000);
}
}
</script>
, и я обращаюсь к ней с таким вызовом:
<% jsp code
String currentUrl="<script>document.writeln(getSrc();)</script>";
more jsp code %>
ОстальныеКод на самом деле в порядке, попробовал его с обычным PDF-URL, и он сохранил PDF на диск.
Надеюсь, что это понятно, и спасибо заранее!