Está en la página 1de 4

Estas en el tema de Arreglos en Java (desbordamiento) en el foro de Java en Foros del

Web. Cmo soluciono este error de programacin? ERROR:


java.lang.ArrayIndexOutOfBoundsException Bueno, investigu y esto es porque cuando el
programa Java tiene acceso a la matriz "args" para ...
#1 (permalink)
22/11/2010, 13:56

leninm2

Fecha de Ingreso: noviembre-2010


Mensajes: 4
Antigedad: 4 aos, 10 meses
Puntos: 0

Arreglos en Java (desbordamiento)

Cmo soluciono este error de programacin?


ERROR: java.lang.ArrayIndexOutOfBoundsException
Bueno, investigu y esto es porque cuando el programa Java tiene acceso a la matriz "args" para los
argumentos de lnea de comandos o programa, intenta obtener elementos de la matriz est fuera de las
matrices lmites (el ndice utilizado es mayor que el nmero de elementos de matriz - 1), pero no s en
qu parte de mi cdigo est ese error.
Aqu les dejo una parte de mi cdigo, espero y me puedan ayudar, me urge mucho:
//se pasa los parametros a variables
String numero = (req.getParameter("Numero"));//al ultimo numero gurado le aumentamos uno
String year_memo=(req.getParameter("Year"));
//String no_clte=(req.getParameter("Idclte"));
//System.out.println("Contenido de year_memo"+ year_memo);
/*********************************
String empresa = (req.getParameter("empresas"));
String band = (req.getParameter("band"));
String para;
if (band == "si")
{
para = (req.getParameter("memo"));
}
else
{
para = (req.getParameter("para_memo"));
}
int noClte=(objmemos.getIdCliente(para,empre
String no_clte=String.valueOf(noClte);
Vector memo=new Vector();
Vector clte=new Vector();
memo=objmemos.consultaIndvMemo(num year_memo);
clte=objmemos.consultaClte(no_clte
String num_emp= idusuario;
String tipo= objusuarios.get_TipoUsuario(num_emp);
//OBTENER LOS E-MAILS DE CCP.
String emails=(req.getParameter("ccp"));
String copiaccp=emails.trim()+"/";//Auxiliar de TEXAREA para poder dividir en campos cada nombre
int p=copiaccp.indexOf("");
int q=copiaccp.indexOf("/");
String nombre=copiaccp.substring(p,q);
String direc="";
String asunto="";
String correo="";
StringTokenizer st=new StringTokenizer(nombre,"\r");
while(st.hasMoreTokens()){
String nom=st.nextToken().trim();

String mail="";
if (nom.length()!=0){
mail=objmemos.getMail(nom);
correo=mail.trim()+"@iie.org.mx;
direc=direc+correo;
}
}
if (direc .equals("")){
direc="No hay usuarios ccp.,";
}
String corr=direc.substring(0,direc.length()-1) <--SER POR ESE "-1"?
// -----------------------//si el campo para y el campo asunto no tienen informacin, manda un error
//aqui tambien comprobamos que la sesin se halla iniciado y la variable num_emp contenga
informacin
if(numero.equals("")|year_memo.equ
printDataError(req,resp);
}
else{
System.out.println("Continuo ...");
String dia=memo.get(0).toString();
String mes=memo.get(1).toString();
String anio=memo.get(2).toString();
if (numero.length()==1)
{
System.out.println("Entro al if de que numero tiene un dijito");
numero="00"+numero;
}
if (numero.length()==2)
{
System.out.println("Entro al if de que numero tiene un dijito");
numero="0"+numero;
}
String cliente=memo.get(4).toString().toUpperCa
String puesto=clte.get(0).toString().trim();
puesto=puesto.replace('\r',''); //usado para reemplazar retornos de carro
puesto=puesto.replace('\n',''); //usado para reemplazar enter
String direccion=clte.get(1).toString().trim();
direccion=direccion.replace('\r', //usado para reemplazar retornos de carro
direccion=direccion.replace('\n', //usado para reemplazar enter
direccion=direccion.replace('#',' //usado para reemplazar #
direccion=direccion.replace('"','
String texto=memo.get(7).toString();
texto=texto.replace('\r',''); //usado para reemplazar retornos de carro
texto=texto.replace('\n',''); //usado para reemplazar enter
texto=texto.replace('#','');
texto=texto.replace('?','|');
texto=texto.replace('%','');
texto=texto.replace('"','\'');
String de=memo.get(3).toString().toUpperCase();
String ccpe=memo.get(9).toString();
String ccp=memo.get(8).toString();
showDoc(req,resp,dia,mes,anio,num
}
}

#2 (permalink)
23/11/2010, 05:05

GreenEyed

Fecha de Ingreso: octubre-2003


Mensajes: 3.578
Antigedad: 11 aos, 11 meses
Puntos: 51

Respuesta: Arreglos en Java (desbordamiento)

Si lees el Stacktrace del error, te dice en que linea est el error y el indice al que has intentado acceder,
adems del tamao del array. Con eso ya deberas tener bastante idea de cual es el problema.
S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestar lo que me
d la gana.
#3 (permalink)
23/11/2010, 10:23

leninm2

Fecha de Ingreso: noviembre-2010


Mensajes: 4
Antigedad: 4 aos, 10 meses
Puntos: 0

Respuesta: Arreglos en Java (desbordamiento)

Ya chequ todo lo posible y no me corrije el error.


No me puedes decir en dnde est mi error? Por favor!
Busco, busco y no encuentro.
#4 (permalink)
23/11/2010, 11:58

GreenEyed

Fecha de Ingreso: octubre-2003


Mensajes: 3.578
Antigedad: 11 aos, 11 meses
Puntos: 51

Respuesta: Arreglos en Java (desbordamiento)

Repito que el StackTrace te dice donde est el error y los valores de los indices involucrados. Sin ver el
StackTrace completo y sin saber los numeros de linea correspondientes al listado que muestras,
nosotros solo podemos jugar a las adivinanzas.
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestar lo que me
d la gana.
#5 (permalink)
23/11/2010, 23:22

leninm2

Fecha de Ingreso: noviembre-2010


Mensajes: 4
Antigedad: 4 aos, 10 meses
Puntos: 0

Respuesta: Arreglos en Java (desbordamiento)

Soy novato en esto, se escucha incoherente, pero realmente NO S..exactamente dnde est el error.
Ya s que es un stacktrace, pero an no identifico el error.
Disculpa por ser as, pero NO se me da la programacin y este trabajo lo quiero sacar porque es parte
de mi Residencia Profesional (prcticas)...
jejeej
Help!!

#6 (permalink)
24/11/2010, 00:45

GreenEyed

Fecha de Ingreso: octubre-2003


Mensajes: 3.578
Antigedad: 11 aos, 11 meses
Puntos: 51

Respuesta: Arreglos en Java (desbordamiento)

Hola,
Entiendo que seas novato, todos lo hemos sido, pero intenta entender lo que escribo:
.- Necesitamos ver el StackTrace completo. Ver solo el mensaje "ERROR:
java.lang.ArrayIndexOutOfBoundsException" no es suficiente para poder ayudarte.
.- Necesitamos saber los nmeros de linea que corresponden al listado que nos mostraste donde
supuestamente est el error. Si no, tampoco podemos ayudarte.
Hallar donde est el problema es cuestin de interpretar el mensaje de error completo, pero si no lo
podemos ver, no podemos hacer nada. Ten en cuenta que nosotros no podemos probar tu programa, ni
sabemos lo que tu sabes sobre el, ni los valores que le pasas, ni lo vemos ejecutarse... slo vemos lo que
tu nos escribes aqu, y si no tenemos suficiente informacin, pues no podemos hacer mucho.