Como pardillo de turno, ando loco con el error que muestro en el titulo. Lo explico un poco:
En un 'jpanel form' con varios botones, hago una llamada a un metodo situado en un 'Java File' (Accionesdepanel).
Cita:
En el 'Accionesdepanel ' coloco lo siguiente:{
private void btnLimonActionPerformed(java.awt.event.ActionEvent evt)
accionbeber.CargarRefrescoLimon();
}
private void btnLimonActionPerformed(java.awt.event.ActionEvent evt)
accionbeber.CargarRefrescoLimon();
}
Cita:
En la primera linea, asigno un valor al jtextfield situado en un jPanel (general), y en la segunda linea ejecuto un metodo situado en un 'Java File' (accionGeneral), el cual es el siguiente:public void CargarRefrescoLimon(){
panel.txtProducto.setText("401");
acciongeneral.InsertarProductoFactura();
}
panel.txtProducto.setText("401");
acciongeneral.InsertarProductoFactura();
}
Cita:
Lo del final de código está todavia verde (MAL, para que engañarnos). El error me salta cuando le meto esta linea public void InsertarProductoFactura(){
String codigo = panel.getProductoId();
System.out.println(codigo);
try {
MySQL condb = new MySQL();
Connection reg = condb.tpvconexion();
Statement stm= reg.createStatement();
String sql= "SELECT * FROM producto WHERE idPedido= '"+codigo+"'";
System.out.println(sql);
ResultSet rst = stm.executeQuery(sql);
String id = null;
String producto = null;
String precio = null;
while(rst.next()){
id = rst.getString("id");
producto = rst.getString("Producto");
precio = rst.getString("Precio");
}
//Cargamos la fila según el producto indicado.
DefaultTableModel factura = (DefaultTableModel) panel.tblFactura.getModel();
/**String producto = (String) rst.getObject(2);
String precio = Float.toString(pre);
**/String cantidad = Integer.toString(cant);
String total = Float.toString(tot);
String [] datos = {cantidad,producto,precio,total};
factura.addRow(datos);
}
catch(SQLException e){
}
}
String codigo = panel.getProductoId();
System.out.println(codigo);
try {
MySQL condb = new MySQL();
Connection reg = condb.tpvconexion();
Statement stm= reg.createStatement();
String sql= "SELECT * FROM producto WHERE idPedido= '"+codigo+"'";
System.out.println(sql);
ResultSet rst = stm.executeQuery(sql);
String id = null;
String producto = null;
String precio = null;
while(rst.next()){
id = rst.getString("id");
producto = rst.getString("Producto");
precio = rst.getString("Precio");
}
//Cargamos la fila según el producto indicado.
DefaultTableModel factura = (DefaultTableModel) panel.tblFactura.getModel();
/**String producto = (String) rst.getObject(2);
String precio = Float.toString(pre);
**/String cantidad = Integer.toString(cant);
String total = Float.toString(tot);
String [] datos = {cantidad,producto,precio,total};
factura.addRow(datos);
}
catch(SQLException e){
}
}
Cita:
He probado metiendole un valor directamente a la variable y la sentencia si continua. String codigo = panel.getProductoId();
Donde demonios estoy fallando? llamadas getText de este tipo tengo varios y no me fallan pero dentro de este metodo si.