Errores al hacer código en IDE netbeans y lenguaje de programación java
Estoy siguiendo un tutorial para realizar una aplicación de escritorio la cual 1ro se enseñaba sin base de datos y ya después enseñaban con esta . Resulta que el tutorial esta en netbeans 7.2 y el que baje fue el 8 que es el mas actual en este momento no se si sea por eso el error ya que me han salido otros errores pero los he areglado ingresando código adicional pero con este no he podido.
Es un sistema de facturación ya la opción de base de datos funcionaron el crud de ptos, crud de clientes pero tengo un formulario de facturas el cual para hacer una nueva factura lsi no selecciono el pto (que lo cojo de un combobox) y la cantidad me sale el error respectivo porque se hicieron validaciones ahí no hay ningún inconveniente) pero si los selecciono y le doy adicionar de una revienta la aplicación.
Yo tengo una clase llamada opcion que esta así
public class Opcion {
private String valor;
private String descripcion;
public Opcion(String valor, String descripcion) {
this.valor = valor;
this.descripcion = descripcion;
}
public String getValor() {
return valor;
}
public String getDescripcion() {
return descripcion;
}
//sobreescribiendo metodo toString
@Override
public String toString() {
return descripcion;
}
En adicionar después de hacer las respectivas validaciones que funcionan bien coloco el siguiente código
Producto miProducto
= misDatos2. GetProducto(((Opcion) cmbProducto. GetSelectedItem()). GetValor()); //linea que me selecciona donde supuesta mente esta el error el getValor esta creado en la clase Opcion
// // adicionamos pto a la tabla
String registro[] = new String[5];
registro[0] = (miProducto.getIdProducto());
registro[1] = miProducto.getDescripcion();
registro[2] = "" + miProducto.getPrecio();
registro[3] = "" + cantidad;
registro[4] = "" + (cantidad * miProducto.getPrecio());
miTabla.addRow(registro); // adicionar una fila
//inicializar campos
cmbProducto.setSelectedIndex(0);
txtCantidad.setText("");
cmbProducto.requestFocusInWindow();
El código no aparece subrayado ni nada pero cuando le doy play al proyecto al darle adicionar no sale nada y sale el siguiente error que es como una excepción
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to Clases.Opcion le intentando colocarle el toString() en todas partes pero no hay forma que funcione y no se si es que a la nueva version del netbeans se hace diferente y no he conseguido algún código en internet que me ayude a solucionarlo
Este es el otro código que de pronto también te puede servir de información el metodo para obtener un producto que habla arriba
public Producto getProducto(String idProducto) {
try {
Producto miProducto = null;
String sql = "select * as num from productos "
+ "where idProducto = '" + idProducto + "'";
Statement st = cnn.createStatement();
ResultSet rs = st.executeQuery(sql);
if (rs.next()) {
miProducto = new Producto(
rs.getString("idProducto"),
rs.getString("descripcion"),
rs.getInt("precio"),
rs.getInt("idIVA"),
rs.getString("notas"));
}
return miProducto;
} catch (SQLException ex) {
Logger.getLogger(Datos2.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
Espero sea suficiente información y me puedan ayudar a solucionarlo parece algo de que no deja convertir de string a opción o viceversa que eso era el error que salia cuando no estaba trabajando con bd