Как запустить iReport-nb 3.x.x из другого Java-приложения? - PullRequest
0 голосов
/ 12 мая 2009

Я бы хотел начать использовать iReport (издание NetBeans) и заменить старый добрый классический iReport 3.0.x. Похоже, классический iReport больше не будет улучшен и в какой-то момент заброшен.

Дело в том, что мне нужно запустить iReport из другого Java-приложения. С iReport 3.0 это было довольно легко и просто: просто вызовите it.businesslogic.ireport.gui.MainFrame.main(args); и iReport запущен и работает.

Проблема в том, что я понятия не имею, как сделать то же самое в iReport-nb. Платформа NetBeans мне совершенно неизвестна, и я не смог найти ничего похожего на основной метод или отправную точку приложения. Похоже, что сначала загружается много платформ Net Bean и как-то скрывается начальная точка iReport.

Ответы [ 3 ]

1 голос
/ 02 июня 2009

iReport, основанный на платформе NetBeans, работает как отдельное приложение (как и классическое), даже если его можно установить и использовать как плагин NetBeans. Вскоре выйдет iR 3.5.2, он будет охватывать все оставшиеся функции, присутствующие в iR classic, которые еще не были рассмотрены в предыдущих версиях, но, с другой стороны, он предоставляет множество новых функций и поддержку JasperReports 3.5.2, включая полностью новая реализация компонента Barcode, List (который является своего рода легким подотчетом), новые типы диаграмм, поддержка многополосных каналов для детализации и верхнего / нижнего колонтитула группы, встроенный предварительный просмотр и т. д.

Здесь вы можете найти несколько советов о том, как запускать приложения на платформе NetBeans из другого Java-приложения. Не тривиально, так как вам нужно немного настроить среду, но окончательно выполнимо: http://wiki.netbeans.org/DevFaqPlatformAppAuthStrategies

Джулио

0 голосов
/ 05 июня 2009

1) Проектирование: для разработки отчета идея почти такая же. После установки плагина создайте новый-> отчет и начните проектирование. Когда вы закончите, выберите предварительный просмотр, и iReport скомпилирует ваш отчет, получив файл .jasper.

2) Выполнить: написать код для передачи данных и запустить .jasper из вашего кода Java Примерно так:

JasperPrint print=null;
ResultSet rs=null;
try {
    Statement stmt = (Statement) myConnection.createStatement (ResultSet.TYPE_SCROLL_SENSITIVE,//Default either way
            ResultSet.CONCUR_READ_ONLY);
    rs = stmt.executeQuery("select * from Table");
} catch (SQLException sQLException) {
}


    try {
        print = JasperFillManager.fillReport(filename, new HashMap(), new JRResultSetDataSource(rs));
    } catch (JRException ex) {                                                   
    }


try{
        JRExporter exporter=new net.sf.jasperreports.engine.export.JRPdfExporter();
        exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, pdfOutFileName);
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
        exporter.exportReport();

} ..........

0 голосов
/ 12 мая 2009

Почему вы думаете, что он заброшен? Последняя версия 3.5.0 сейчас, кстати. И какие причины изменить его на версию NetBeans? Имхо, основным приложением по-прежнему является iReport, а функциональность плагина NetBean такая же, как и у «старого старого iReport».

И вернемся к вашему вопросу. iReport - это отдельное приложение, а «NetBeans edition» - просто плагин, поэтому необходимо запустить IDE NetBeans, а затем переключить его макет на плагин iReport.

...