24/05/2010, 11:27
|
| | Fecha de Ingreso: mayo-2010
Mensajes: 20
Antigüedad: 14 años, 8 meses Puntos: 0 | |
Respuesta: Ayuda Jtable Cita:
Iniciado por chuidiang Pon el código con la llamada a getDatos(), y la excepción exacta con el número de línea.
Se bueno. Hola Chuidiang:
Este es el código que tengo al momento
Código:
1 /**
2 * @(#)TablePrint.java
3 *
4 *
5 * @author
6 * @version 1.00 2010/4/30
7 */
8
9 package recomendaciones.bases_de_datos;
10 import javax.swing.*;
11 import java.awt.*;
12 import java.awt.event.*;
13 import java.awt.print.*;
14 import java.text.*;
15 import java.util.*;
16 import java.util.Date;
17 import java.io.*;
18 import javax.swing.table.*;
19 import javax.swing.JTable;
20 import javax.swing.table.DefaultTableModel;
21 import java.sql.Connection;
22 import java.sql.DriverManager;
23 import java.sql.SQLException;
24 import java.sql.PreparedStatement;
25 import java.sql.ResultSet;
26 import java.sql.Statement;
27 import java.sql.SQLException;
28
29
30 public class TablePrint extends JPanel {
31
32 ResultSet rs;
33 DefaultTableModel modelo;
34 JTable table;
35 JButton button;
36 JScrollPane scrollPane;
37
38 public TablePrint()
39 {
40 getDatos();
41 configura();
42 muestra();
43 }
44
45 public void getDatos()
46 {
47 try
48 {
49 DriverManager.registerDriver(new com.mysql.jdbc.Driver());
50 Connection conexion = DriverManager.getConnection("jdbc:mysql://172.29.182.95:3306/recomendaciones","root","123456");
51 Statement s = conexion.createStatement();
52 ResultSet rs = s.executeQuery("(SELECT * FROM informe WHERE niv_risk='MEDIO'&&TO_DAYS(NOW())-TO_DAYS(fecha_inf)>=15&&fecha_seg='0000-00-00')UNION(SELECT * FROM informe WHERE niv_risk='ALTO'&&TO_DAYS(NOW())-TO_DAYS(fecha_inf)>=5&&fecha_seg='0000-00-00')UNION(SELECT * FROM informe WHERE niv_risk='BAJO'&&TO_DAYS(NOW())-TO_DAYS(fecha_inf)>=30&&fecha_seg='0000-00-00') ORDER BY niv_risk");
53 carga();
54 }
55 catch(SQLException e)
56 {
57 JOptionPane.showMessageDialog(null,e.getMessage());
58 }
59 }
60
61 public void carga()
62 {
63 try
64 {
65 DefaultTableModel modelo = new DefaultTableModel();
66 JTable table = new JTable(modelo);
67 modelo.addColumn("no_inf");
68 modelo.addColumn("part_a");
69 modelo.addColumn("part_b");
70 modelo.addColumn("part_c");
71 modelo.addColumn("part_d");
72 modelo.addColumn("part_e");
73 modelo.addColumn("fecha_com");
74 modelo.addColumn("lugar");
75 modelo.addColumn("obj_com");
76 modelo.addColumn("fecha_inf");
77 modelo.addColumn("resp_inf");
78 modelo.addColumn("recom_a");
79 modelo.addColumn("recom_b");
80 modelo.addColumn("recom_c");
81 modelo.addColumn("recom_d");
82 modelo.addColumn("recom_e");
83 modelo.addColumn("niv_risk");
84 modelo.addColumn("dir_loc");
85 modelo.addColumn("fecha_seg");
86 while (rs.next())
87 {
88 Object [] fila = new Object[19];
89 for (int i=0;i<19;i++)
90 fila[i] = rs.getObject(i+1);
91 modelo.addRow(fila);
92 }
93 table.setModel(modelo);
94 }
95 catch (SQLException e)
96 {
97
98 }
99 }
100
101 public void configura()
102 {
103 JButton button = new JButton("Imprimir");
104 ActionListener printAction = new ActionListener() {
105 public void actionPerformed(ActionEvent e) {
106 try {
107 MessageFormat headerFormat = new MessageFormat("Page {0}\n CNA");
108 MessageFormat footerFormat = new MessageFormat("- {0} -");
109 table.print(JTable.PrintMode.FIT_WIDTH, headerFormat, footerFormat);
110 }
111 catch (PrinterException pe)
112 {
113 System.err.println("Error printing: " + pe.getMessage());
114 }
115 }
116 };
117 button.addActionListener(printAction);
118 }
119
120 public void muestra()
121 {
122 setLayout(new GridLayout(0,1));
123 add(table);
124 add(button);
125 }
126
127 public static void main(String args[]) {
128
129 TablePrint tb= new TablePrint();
130 JFrame frame = new JFrame("Table Printing");
131 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
132 frame.getContentPane().add(tb);
133 frame.setSize(600, 300);
134 frame.setVisible(true);
135 }
136 }
Y este es el error que me sale:
Código:
--------------------Configuration: <Default>--------------------
Exception in thread "main" java.lang.NullPointerException
at recomendaciones.bases_de_datos.TablePrint.carga(TablePrint.java:86)
at recomendaciones.bases_de_datos.TablePrint.getDatos(TablePrint.java:53)
at recomendaciones.bases_de_datos.TablePrint.<init>(TablePrint.java:40)
at recomendaciones.bases_de_datos.TablePrint.main(TablePrint.java:129)
Process completed.
Gracias por la ayuda
Saludos...
Última edición por RiNo_sKa; 24/05/2010 a las 11:57 |