Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/06/2007, 13:01
luiski
 
Fecha de Ingreso: mayo-2006
Mensajes: 39
Antigüedad: 18 años, 7 meses
Puntos: 0
Un cable porfavor! java.util.NoSuchElementException

Hola amigos toy haciendo una pagina en java y jsp y ahora resulta ke me sale un error y no se como solucionarlo.

El codigo es este:

Código:
Collection c = (Collection)request.getAttribute("listar_dades_botiga");
Iterator i = c.iterator();

int cant = Integer.parseInt(request.getAttribute("cantidad").toString());

Collection c2 = (Collection)request.getAttribute("listar_dades_pedidos");
Iterator i2 = c2.iterator();

Collection c3;
Iterator i3;
DadesEmpresaVO vo3;
boolean noborrada=false;

while (i.hasNext()) {
	DadesBotigaVO vo = (DadesBotigaVO)i.next();
	
	DadesPedidosVO vo2 = (DadesPedidosVO)i2.next();
	
	c3 = (Collection)request.getAttribute("listar_dades_empresa");
	i3 = c3.iterator();
%>
	<tr>
		<td align='center'><%=vo.getNIFBotiga() %></td>
		<td align='center'><%=vo.getNomBotiga() %></td>
		<td align='center'><%=vo.getDireccio() %></td>
		<td align='center'><%=vo.getServeiOf() %></td>
		<td align='center'><%=vo.getCiutatB() %></td>
		<td align='center'><%
		while (i3.hasNext()) {
			vo3 = (DadesEmpresaVO)i3.next();
			if(vo2.getNIFEmpresaP().equals(vo3.getNIFEmpresa())){
				%><%=vo3.getNomEmpresa() %><%
				noborrada=true;
			}
		}
		if(!noborrada){
			%><font face='Trebuchet MS' color='#FF0000'>Empresa borrada</font><%
		}
		%></td>
	</tr>
<% } %>
La cuestion es ke esto busca en tres tablas unos valores, bueno cuando tengo 2 o mas tuplas en esas tablas funciona bien pero cuando solo tengo 1 tupla me da este error: java.util.NoSuchElementException.

Tengo otro codigo ke es para cuando tengo una tupla solo:

Código:
DadesPedidosVO vo2=(DadesPedidosVO)request.getAttribute("listar_dades_pedidos");
Pero lo he puesto aki dentro de un if para cuando solo haya uno pero entonces este funciona bien pero el otro de collection me dice ke no tiene valores... **

if(cant!=1){ //cant contiene la cantidad de tuplas
vo2 = (DadesPedidosVO)i2.next(); //del collection **
}else{
vo2=(DadesPedidosVO)request.getAttribute("listar_d ades_pedidos"); //de una sola tupla
}

Alguien me puede echar un cable?

Un saludo.