"for" fantasma

Buenas. Tengo un problema que tal vez puedas solucionar. Tengo este código, pero no me entra en el for:
<%!
public static String dame(String s){
return s;
}
%>
<%!
public void Calcula (){
int contador=0;
int a=2;
for (contador = 0; contador<15; contador ++){
if (((a+contador)%2)==0){
%>
<%= dame ("HOLA"%>
<%!
}else{
%>
<%= dame ("ADIOS"%>
<%!
}
}
}
%>
Me muestra: "HOLA" "ADIOS". ¿Por qué no me hace el bucle?

1 respuesta

Respuesta
1
<%= dame ("HOLA"%>
Este código, aunque crees que esta dentro del for, presumiblemente, en la clase generada no lo estará. Lo que quiere decir que tienes
Clacula () {
for {
}
}
Y el metodo jspService Contiene algo como
out.write("HOLA")
out.write("ADIOS")
que es lo que realmente estas viendo.
Para hacer lo que quieres puedes intentar :
<%! calcula(JspWriter out) {
for ... {
out.write(dame("HOLA"));
}
}
%>
luego, para llamar a calcula, haces
<%
calcula(out);
%>
No tienes que declarar out puesto que es una variaqble implícita de JSP que se crea en el método jspService
Con esas correcciones probablemente si te funcione ...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas