Mostrar un vector en un textArea

borjamary
23 de Mayo del 2005
Mira que empiezo a odiar a JSP porque no consigo yo enterarme bien de como va.

Ahora mi problema es el siguiente. Tengo un metodo en una clase que devuelve un vector con nombres de profesores y mi idea es mostrar todos los nombres en un aera de texto.
Como se puede hacer?

Legolas
23 de Mayo del 2005
recorres el vector y vas scando el nombre del profesor pero no se como hacerlo line a linea en un textbox :S

planchet
23 de Mayo del 2005
Hola,

Depurar JSP's es una pesadilla a menos que cuentes con un IDE que tenga esa facilidad (como el websphere... aunque creo que no muchos lo usan, o un plugin de eclipse como el myEclipse). Asi que te recomiendo que intentes hacer todo lo posible en los servlets y no en los JSP's.
Hasta donde yo se, no puedes cambiar de linea en un <textarea> porque eso lo hace inmediatamente el browser segun las dimensiones del textarea, y el contenido no admite cosas como '/n' o endl. Te recomendaria que si puedes, crees tu String de html basado en haber recorrido el vector, pero sobre un <table>.

Suerte.

borjamary
23 de Mayo del 2005
ok gracias por los consejos

frantic
23 de Mayo del 2005
Hola que tal creo que lo que te toca hacer es rellenar un text area, pero no se si será que lo deseas mostrar en una lista o algo por el estilo, si es una lista te dejo un codigo que utilice yo en un jsp que acabo de terminar:

<SELECT NAME="centroDirectivo">
<%
//Realizamos el query a la base de datos
CentrosDirectivosHelper centroHelper = new CentrosDirectivosHelper();
Vector vector = new Vector();
vector = centroHelper.buscarTodosCentros();

CentrosDirectivos centro = (CentrosDirectivos) session.getAttribute("centro"); //Obtenemos el centro
String selected = centro.getDesCentroDirectivo(); //Obtenemos la descripcion de la cadena


if(!vector.isEmpty()){
//Iteramos dentro del vector para obtener uno a uno los centros directivos
for(int i = 0; i < vector.size(); i++){
String cd = "";
cd = (String) vector.get(i);


<OPTION><%=cd%>
<%

}
}
%>

</SELECT>

Espero que te sirva de guía toma en cuenta que CentrosDirectivos es un objeto que cree yo y contiene la data que necesito allí y en otros lugares, tu lo sustituirias por cualquier objeto que utilices en tu programa.

Si tu intencion por el contrario es rellenar un textArea solamente rellena una variable con el formato que quieres (por ejemplo separado por "," o por ";" y eso lo metes en un String que luego muestras en el textArea asi:

<%
//Realizamos el query a la base de datos
CentrosDirectivosHelper centroHelper = new CentrosDirectivosHelper();
Vector vector = new Vector();
vector = centroHelper.buscarTodosCentros();

CentrosDirectivos centro = (CentrosDirectivos) session.getAttribute("centro"); //Obtenemos el centro
String selected = centro.getDesCentroDirectivo(); //Obtenemos la descripcion de la cadena


if(!vector.isEmpty()){
//Iteramos dentro del vector para obtener uno a uno los centros directivos
String cadena = "";
for(int i = 0; i < vector.size(); i++){
if(i != vector.size() - 1){
cadena = cadena + (String) vector.get(i) + ", ";
}
else{
//Es la ultima linea asi que no lleva la coma
cadena = cadena + (String) vector.get(i);
}
}
%>

Y luego en el textArea colocas:
<TEXTAREA><%= cadena %></TEXTAREA>

Y tendrias alli todo lo que viene en el vector.

Espero que eso te sirva de guia.
Saludos...