22/11/2010, 14:56
|
| | Fecha de Ingreso: noviembre-2010
Mensajes: 4
Antigüedad: 13 años, 11 meses Puntos: 0 | |
Arreglos en Java (desbordamiento) ¿Cómo soluciono este error de programación?
ERROR: java.lang.ArrayIndexOutOfBoundsException
Bueno, investigué y esto es porque cuando el programa Java tiene acceso a la matriz "args" para los argumentos de línea de comandos o programa, intenta obtener elementos de la matriz está fuera de las matrices límites (el índice utilizado es mayor que el número de elementos de matriz - 1), pero no sé en qué parte de mi código está ese error.
Aquí les dejo una parte de mi código, 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 información, manda un error
//aqui tambien comprobamos que la sesión se halla iniciado y la variable num_emp contenga información
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…
}
} |