Как отобразить отчет Jasper в веб-браузереJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как отобразить отчет Jasper в веб-браузере

Сообщение Anonymous »

Доброе утро всем, меня зовут Дэвид, и я новичок в отчетах jasper (хм... я тоже новичок в stack overflow). Я загрузил руководство по отчетам Jasper, которое помогло мне выполнить процедуру создания моего первого отчета. Я успешно создал свой файл .jrxml, скомпилировал его в файл .jasper и заполнил его в файл .jprint, и все это с помощью Java-кодов. Я также предварительно просмотрел успешно сообщите об этом с помощью программы просмотра jasper с помощью целевых объектов ant в моем файле build.xml.

Моя проблема заключается в том, как отобразить отчет в веб-браузере.

Все, что мне было дано в руководстве, это код Java-сервлета, который экспортирует отчет Jasper в формат PDF, который затем будет отображаться в браузере. Вот код:

Код: Выделить всё

package net.ensode.jasperbook;

import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.HashMap;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperRunManager;

public class FirstReportSendToBrowserServlet extends.  HttpServlet{

@SuppressWarnings("unchecked")
protected void doGet(HttpServletRequest.  request, HttpServletResponse response)
throws ServletException, IOException{

ServletOutputStream servletOutputStream = response.getOutputStream();
InputStream reportStream = getServletConfig().getServletContext().getResourceAsStream("/reports/FirstReport.jasper");

try{
JasperRunManager.runReportToPdfStream(reportStream, servletOutputStream, new HashMap(), new JREmptyDataSource());
response.setContentType("application/pdf");
servletOutputStream.flush();
servletOutputStream.close();

}

catch(JRException e){
//display stack trace in the browser
StringWriter stringWriter = new StringWriter();
PrintWriter printWriter = new PrintWriter(stringWriter);
e.printStackTrace(printWriter);
response.setContentType("text/plain");
response.getOutputStream().print(stringWriter.toString());
}

}
}
Теперь моя проблема заключается в том, как я собираюсь развернуть приведенный выше код в контейнере сервлетов. Таким образом, мой отчет Jasper будет отображаться в формате PDF в моем веб-браузере. В руководстве сказано, что на их веб-сайте можно найти ant-скрипт для автоматизации этого процесса, но я поискал и не нашел его.

Итак, если кто-нибудь из вас может дать мне инструкцию о том, как развернуть приведенный выше код в контейнере сервлетов, или дайте мне ссылку, которая проинструктирует меня о том, как создать сценарий ant, автоматизирующий этот процесс, я буду очень признателен, потому что я потратил на эту проблему почти три дня.

Подробнее здесь: https://stackoverflow.com/questions/214 ... eb-browser
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»