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

error IndexOutOfBoundsException

Estas en el tema de error IndexOutOfBoundsException en el foro de Java en Foros del Web. tengo el siguiente error al momentode cargarlo en el jsp. el error es cuando un producto no posee un color,recupero el color mediante el codigo ...
  #1 (permalink)  
Antiguo 26/12/2005, 16:14
 
Fecha de Ingreso: agosto-2005
Mensajes: 72
Antigüedad: 18 años, 9 meses
Puntos: 1
error IndexOutOfBoundsException

tengo el siguiente error al momentode cargarlo en el jsp.
el error es cuando un producto no posee un color,recupero el color mediante el codigo de un producto y por un indicador (son 2 parametros) , la recuperacion de dartos lo hago con una base de datos .

esto es el jsp
tengo el mismo codigo para medidas y si funciona, como dije anteriosçrmente el error es cuando un producto no tiene color.

ProductoColorDAO objProductoColorDAO =daoFactory.getProductoColorDAO();
Lista objListaCI2=null;
objListaCI2=objProductoColorDAO.color_producto(cod _producto);
BeanColor _beanColor =(BeanColor) objListaCI2.getElemento(0);


ColorDAO objColorDAO =daoFactory.getColorDAO();
Lista objListaCI=null;
objListaCI=objColorDAO.color_indicador(objProducto .getCod_indicador(),_beanColor.getCod_color());

---este es el error que me sale
getElementojava.lang.IndexOutOfBoundsException: Index: 0, Size: 0
  #2 (permalink)  
Antiguo 26/12/2005, 17:29
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Estas intentando recuperar un elemento de una lista que esta vacia, de ahi el error.
  #3 (permalink)  
Antiguo 26/12/2005, 17:34
 
Fecha de Ingreso: agosto-2005
Mensajes: 72
Antigüedad: 18 años, 9 meses
Puntos: 1
asi es pero como valido eso,como valido en la sentencia select ?

cada select esta en un metodo

1r select
sql = "select C.cod_color,nom_color FROM tb_producto_color Pc, tb_color c " +"WHERE pc.cod_color=c.cod_color AND pc.cod_producto='" + cod_producto + "'";



2do select
sql = "select distinct nom_color,cod_color from tb_color C,tb_indicador I " +
"where C.cod_indicador=I.cod_indicador and I.cod_indicador='" + cod_indicador + "' and cod_color<> '" + cod_color + "'";
  #4 (permalink)  
Antiguo 26/12/2005, 17:41
 
Fecha de Ingreso: agosto-2005
Mensajes: 72
Antigüedad: 18 años, 9 meses
Puntos: 1
Cita:
Iniciado por GreenEyed
Estas intentando recuperar un elemento de una lista que esta vacia, de ahi el error.
te refieres a que tengo que validar en el select?
  #5 (permalink)  
Antiguo 26/12/2005, 18:55
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Cita:
BeanColor _beanColor =(BeanColor) objListaCI2.getElemento(0);
Apostaria a que ahi es donde te da el error, debido seguramente a que objListaCI2 esta vacia y tu directamente estas intentando acceder al primer valor.
Eso no lo has de validar en el select, si no que has de validar si la lista esta vacia o no, y para eso nada mejor que mirarse el API de Lista.

Lo mejor siempre es mirarse la Excepcion y el mensaje de error. Eso te dice en que linea se ha producido y cual es el problema, de ahi se analiza la linea y se ve donde se puede haber producido, y de ahi a intentar evitar el error, mirando el API, documentacion o cambiando como funciona el programa.
Siempre de una forma metódica y comprendiendo como funciona tu propio programa.

Animo y suerte.

Un saludo
  #6 (permalink)  
Antiguo 26/12/2005, 19:02
 
Fecha de Ingreso: agosto-2005
Mensajes: 72
Antigüedad: 18 años, 9 meses
Puntos: 1
Cita:
Iniciado por GreenEyed
Apostaria a que ahi es donde te da el error, debido seguramente a que objListaCI2 esta vacia y tu directamente estas intentando acceder al primer valor.
Eso no lo has de validar en el select, si no que has de validar si la lista esta vacia o no, y para eso nada mejor que mirarse el API de Lista.

Lo mejor siempre es mirarse la Excepcion y el mensaje de error. Eso te dice en que linea se ha producido y cual es el problema, de ahi se analiza la linea y se ve donde se puede haber producido, y de ahi a intentar evitar el error, mirando el API, documentacion o cambiando como funciona el programa.
Siempre de una forma metódica y comprendiendo como funciona tu propio programa.

Animo y suerte.

Un saludo
Asi es, alli es donde se cae, entonces debo validarlo en el jsp en el momento que esta cargando, si esta vacia o no.
alguna forma de validarlo?

gracias
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 06:51.