Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / iReport и передача отчётных данных в EXCEL . Eclipse / 4 сообщений из 4, страница 1 из 1
04.04.2012, 17:13
    #37738862
izver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iReport и передача отчётных данных в EXCEL . Eclipse
Есть отчет сделанный в iReport.

Через eclipse сделал проект запускающий отчет.

Сам класс
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
package Sbit;


import java.awt.Dimension;
import java.sql.Connection;
import java.util.HashMap;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;
public class Ireport {
public	String sourceFileName; 
public	HashMap parameters = new HashMap();
public void ireport(){	 
try {
    JasperDesign jasperDesign = JRXmlLoader.load(sourceFileName);
    JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

    Connection conn = DBConnector.getConnection(); 
    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameters, conn);   
    JasperViewer.viewReport(jasperPrint,false);
   
} catch (JRException ejr) {

    ejr.printStackTrace();

}
}
}



Вызов отчета

Код: java
1.
2.
3.
Ireport ir =new Ireport();	
ir.sourceFileName="mor_otgr2.jrxml";							
ir.ireport();



открывается JasperViewer, хочу сохранить в xls выдаёт ошибку:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/poi/hssf/usermodel/HSSFCellStyle
	at net.sf.jasperreports.view.save.JRSingleSheetXlsSaveContributor.save(JRSingleSheetXlsSaveContributor.java:108)
	at net.sf.jasperreports.view.JRViewer.btnSaveActionPerformed(JRViewer.java:1128)
	at net.sf.jasperreports.view.JRViewer$3.actionPerformed(JRViewer.java:668)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:253)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6268)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6033)
	at java.awt.Container.processEvent(Container.java:2045)
	at java.awt.Component.dispatchEventImpl(Component.java:4629)
	at java.awt.Container.dispatchEventImpl(Container.java:2103)
	at java.awt.Component.dispatchEvent(Component.java:4455)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4633)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4297)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4227)
	at java.awt.Container.dispatchEventImpl(Container.java:2089)
	at java.awt.Window.dispatchEventImpl(Window.java:2517)
	at java.awt.Component.dispatchEvent(Component.java:4455)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
	at java.awt.EventQueue.access$000(EventQueue.java:96)
	at java.awt.EventQueue$1.run(EventQueue.java:608)
	at java.awt.EventQueue$1.run(EventQueue.java:606)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
	at java.awt.EventQueue$2.run(EventQueue.java:622)
	at java.awt.EventQueue$2.run(EventQueue.java:620)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
Caused by: java.lang.ClassNotFoundException: org.apache.poi.hssf.usermodel.HSSFCellStyle
	at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
	... 40 more

А если запускаю в самом iReport, и выбираю сохранить в xls. Сохраняет.

В чем проблема?
...
Рейтинг: 0 / 0
04.04.2012, 17:19
    #37738879
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iReport и передача отчётных данных в EXCEL . Eclipse
JasperReport зависит от других библиотек, таких как Apache POI. Их тоже нужно подключать к проекту.
...
Рейтинг: 0 / 0
04.04.2012, 17:22
    #37738884
giigro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iReport и передача отчётных данных в EXCEL . Eclipse
izver,

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
          HashMap parameterMap = new HashMap();
          // кладем параметры
          parameterMap.put("param", pPRM);
          // подключаем шаблон
          InputStream is = Foo.class.getResourceAsStream("templates/FooTpl.jasper");  
          JasperPrint jasperPrint = JasperFillManager.fillReport(is, parameterMap, conn);
          jasperPrint.setLocaleCode("RU");
          JRXlsExporter xlsExporter = new JRXlsExporter();
          xlsExporter.setParameter( JRExporterParameter.JASPER_PRINT, jasperPrint );
          file1 = File.createTempFile("FooXLS", ".xls");
          xlsExporter.setParameter(JRExporterParameter.OUTPUT_FILE, file1);
          xlsExporter.exportReport();
          FileInputStream fis = new FileInputStream( file1 );
          HSSFWorkbook wb = new HSSFWorkbook( fis );
          // параметры
          wb.getSheetAt(0).getPrintSetup().setLandscape(true);
          wb.write ( out );          
          out.close();
          fis.close();      
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
24.04.2014, 14:51
    #38624710
SEBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iReport и передача отчётных данных в EXCEL . Eclipse
giigro, jasperPrint.setLocaleCode("RU"); работает только в tomacat, а как в glassfish3?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / iReport и передача отчётных данных в EXCEL . Eclipse / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]