Foros del Web » Programación para mayores de 30 ;) » Java »

una ayuda por favor!!!!

Estas en el tema de una ayuda por favor!!!! en el foro de Java en Foros del Web. estoy intentando acceder a una base de datos, tengo una clase ConexionBD donde hago todas las conexiones con la base de datos.despues tengo la clase ...
  #1 (permalink)  
Antiguo 11/07/2006, 05:43
 
Fecha de Ingreso: junio-2006
Mensajes: 55
Antigüedad: 17 años, 10 meses
Puntos: 0
una ayuda por favor!!!!

estoy intentando acceder a una base de datos, tengo una clase ConexionBD donde hago todas las conexiones con la base de datos.despues tengo la clase ArticuloBD donde hago las operaciones de consultar, insertar y modifcar articulos.

cunado ejecuto el metodo de consultar no tengo problemas, pero al ejecutar insertar o modfificar me sale el siguiente problema:

java.lang.NoSuchMethodError: articuloBD.ArticuloBD.ModificarArticulo(Larticulo/Articulo;Ljava/lang/String;)Z

eso para modificar y para insertar me sale el mismo problema. os pongo el codigo a ver si saais porque puede ser, se q es por algo de los parametros o el nombre del metodo xo es que ya no se como hacerlo:

package articuloBD;


import java.util.Vector;
import java.sql.*;
import java.lang.Integer;

import articulo.*;
import conexion.ConexionBD;


public class ArticuloBD {

private String consultaSQL;

public ArticuloBD(){
consultaSQL = new String();
}

public Articulo ConsultaArticulo ( String ID){

boolean resultado = false;
ConexionBD consulta = new ConexionBD();
Articulo nuevo_articulo = new Articulo();

try{
consulta.EstablecerConexion();
ResultSet otraRes = consulta.ejecutaConsulta("SELECT * FROM LIBROS WHERE ID='"+ID+"'");
while(otraRes.next()){

resultado = true;

nuevo_articulo.setId(otraRes.getString(1));
nuevo_articulo.setAutor(otraRes.getString(2));


}
consulta.CerrarConexion();
otraRes.close();
}catch(SQLException e){
System.out.println("Excepcion capturada de SQL: " + e);
resultado = false;

}
if(resultado)
return nuevo_articulo;
else
return null;
}



public boolean InsertarArticulo(Articulo c)
{
ConexionBD consulta = new ConexionBD();



consulta.EstablecerConexion();
consulta.ejecutaActualizacion("INSERT INTO LIBROS(ID,AUTOR) VALUES('"+c.getId()+"','"+c.getAutor()+"'");

consulta.CerrarConexion();

return true;

}



public boolean ModificarArticulo(Articulo r, String CODIGO){

ConexionBD consulta = new ConexionBD();
int num_art= 0;
try{
//comprobar que existe ese articulo
consulta.EstablecerConexion();
String sentencia = "SELECT COUNT(*) FROM LIBROS WHERE ID ='"+CODIGO+"'";
ResultSet otraRes = consulta.ejecutaConsulta( sentencia);
otraRes.next();
num_art = otraRes.getInt(1);
otraRes.close();
consulta.CerrarConexion();
}catch(SQLException e){
System.out.println("Excepcion capturada de SQL: " + e);

}
if(num_art > 0){

consulta.EstablecerConexion();
consulta.ejecutaActualizacion("UPDATE LIBROS SET AUTOR = '"+r.getAutor()+"' WHERE ID = '"+CODIGO+"'");
consulta.CerrarConexion();
}
else
return false;



return true;

}



}
  #2 (permalink)  
Antiguo 11/07/2006, 10:41
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Hola, generalmnete cuando se presenta un problema del tipo: java.lang.NoSuchMethodError
es porque existen duplicidad de clases o alguna de las clases no ha sido compilada con la versión actualizada de la clase.

Es decir seguro que tienes otra clase ArticuloBD, que no tiene ese método que estas intentando llamar. Revisa todas las clases que tienes dentro de tu aplicación.
__________________
Saludos,

H@C..
  #3 (permalink)  
Antiguo 11/07/2006, 11:57
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
ve y revisa la firma del metodo ArticuloBD.ModificarArticulo, revisa que le estas pasando los parametros que el metodo te esta pidiendo....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:09.