 
			
				22/11/2010, 14:56
			
			
			     |  
      |    |    |    Fecha de Ingreso: noviembre-2010  
						Mensajes: 4
					  Antigüedad: 15 años 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… 
} 
}           |