package br.com.view;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionFactory {
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException exc) {
exc.printStackTrace();
}
}
public static Connection getConnection(
String url,
String usuario,
String senha) throws SQLException {
return DriverManager.getConnection(url, usuario, senha);
}
public static Connection getSakilaConnection() throws SQLException {
return getConnection(
"jdbc:mysql://localhost/entulho",
"root",
"root");
}
}
package br.com.view;
import java.awt.BorderLayout;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Map;
import javax.swing.JFrame;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.swing.JRViewer;
public class ReportUtils {
public static void openReport(
String titulo,
InputStream inputStream,
Map parametros,
Connection conexao ) throws JRException {
JasperPrint print = JasperFillManager.fillReport(
inputStream, parametros, conexao );
viewReportFrame( titulo, print );
}
public static void openReport(
String titulo,
InputStream inputStream,
Map parametros,
JRDataSource dataSource ) throws JRException {
JasperPrint print = JasperFillManager.fillReport(
inputStream, parametros, dataSource );
viewReportFrame( titulo, print );
}
private static void viewReportFrame( String titulo, JasperPrint print ) {
/*
* Cria um JRViewer para exibir o relatório.
* Um JRViewer é uma JPanel.
*/
JRViewer viewer = new JRViewer( print );
// cria o JFrame
JFrame frameRelatorio = new JFrame( titulo );
// adiciona o JRViewer no JFrame
frameRelatorio.add( viewer, BorderLayout.CENTER );
// configura o tamanho padrão do JFrame
frameRelatorio.setSize( 500, 500 );
// maximiza o JFrame para ocupar a tela toda.
frameRelatorio.setExtendedState( JFrame.MAXIMIZED_BOTH );
// configura a operação padrão quando o JFrame for fechado.
frameRelatorio.setDefaultCloseOperation( JFrame.DISPOSE_ON_CLOSE );
// exibe o JFrame
frameRelatorio.setVisible( true );
}
}
Ai passo os parametros assim para o método
String nomeS = (String) clinome.getText();
String dataeS = (String) dataentrega.getText();
String dataSaS = (String) datasaida.getText();
String endeS = (String) ruata.getText()+ ruata.getText()+bairrota.getText();
String caclocS= (String)cacambaslocadas.getText();
String totalS = (String)totalnota.getText();
String qntareiao = String.valueOf(Variaveis.multareiao);
String qntareiam = String.valueOf(Variaveis.multmedia);
String qntareiaf = String.valueOf(Variaveis.multfina);
String valorareiaS = (String) areiao.getText();
String valorAMS = (String) areiamedia.getText();
String valorAFS = (String) areiafina.getText();
try {
impremirrecibo(nomeS,dataeS,dataSaS,endeS,caclocS,totalS,qntareiao, qntareiam, qntareiaf, valorareiaS, valorAMS, valorAFS);
} catch (JRException ex) {
Logger.getLogger(LocacaoView.class.getName()).log(Level.SEVERE, null, ex);
}
e o método
public void impremirrecibo(String nomeS, String dataeS, String dataSaS,String endeS,String caclocS,String totalS,
String qntareiao,String qntareiam, String qntareiaf,String valorareiaS, String valorAMS, String valorAFS
) throws JRException {
InputStream inputStream;
inputStream = getClass().getResourceAsStream("ReciboPedido.jasper");
Map parametros = new HashMap();
parametros.put("cliente", nomeS);
parametros.put("datapedido", dataeS);
parametros.put("datafinal", dataSaS);
parametros.put("endereco", endeS);
parametros.put("cacamba", caclocS);
parametros.put("totalpedido", totalS);
parametros.put("areiao", qntareiao);
parametros.put("areiamedia", qntareiam);
parametros.put("areiafina", qntareiaf);
parametros.put("valorareiao", valorareiaS);
parametros.put("valorareiamedia", valorAMS);
parametros.put("valorareiafina", valorAFS);
try {
// abre o relatório
ReportUtils.openReport("Relatório Geral", inputStream, parametros,
ConnectionFactory.getSakilaConnection());
} catch (SQLException | JRException exc) {
exc.printStackTrace();
}
}
run:
[EL Info]: 2013-04-22 10:40:25.636--ServerSession(14346890)--EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461
[EL Info]: 2013-04-22 10:40:26.318--ServerSession(14346890)--file:/C:/Users/MARCELO/Desktop/Software DiskEntulho/DiskEntulho 2.0/DiskEntulho/build/classes/_entulhoPU login successful
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at net.sf.jasperreports.engine.util.JRLoader.<clinit>(JRLoader.java:65)
at net.sf.jasperreports.engine.JRPropertiesUtil.loadProperties(JRPropertiesUtil.java:99)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.initProperties(DefaultJasperReportsContext.java:95)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.<init>(DefaultJasperReportsContext.java:72)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.<clinit>(DefaultJasperReportsContext.java:60)
at net.sf.jasperreports.engine.JasperFillManager.getDefaultInstance(JasperFillManager.java:85)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)
at br.com.view.ReportUtils.openReport(ReportUtils.java:21)
at br.com.view.LocacaoView.impremirrecibo(LocacaoView.java:1507)
at br.com.view.LocacaoView.jButton2ActionPerformed(LocacaoView.java:1366)
at br.com.view.LocacaoView.access$2700(LocacaoView.java:33)
at br.com.view.LocacaoView$FormListener.actionPerformed(LocacaoView.java:1087)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 49 more
Desculpa se ficou extenso, é que não faço ideia de onde está o erro. e desde já obrigado