Foros del Web » Programación para mayores de 30 ;) » Java »

Usar Vectores en JSP mediante EL (expresion language)

Estas en el tema de Usar Vectores en JSP mediante EL (expresion language) en el foro de Java en Foros del Web. Hola ahi cuelgo un fragmento de codigo propio donde se muestra como usar desde un JSP una variable Vector recibida por Session usando Expresion Language. ...
  #1 (permalink)  
Antiguo 04/05/2007, 00:10
 
Fecha de Ingreso: marzo-2007
Mensajes: 26
Antigüedad: 17 años, 8 meses
Puntos: 0
De acuerdo Usar Vectores en JSP mediante EL (expresion language)

Hola ahi cuelgo un fragmento de codigo propio donde se muestra como usar desde un JSP una variable Vector recibida por Session usando Expresion Language. Para mi es la manera mas potente y facil de utilizar variables complejas. Tan complejas como el caso de abajo: donde recibimos una lista de Reservas en un Vector<Reserva>. La reserva tiene a su ves un Vector<Venta>. Cada venta tiene una atributo Tarifa que es un objeto con un atributo Clase con un atributo String nombreClase que lo que queremos usar para imprimirlo en html.
Código HTML:
Ejemplo --> {misReservas[pos].ventasLista[0].tarifa.clase.nombreClase}
Para que esto funcione debemos trabajar con JBeans: es decir que todas las clases tengan metodos get y set para acceder a los atributos de la clase.
Para acceder a las posiciones usamos la variable pos, entero al que le damos valores 0,1,2....X con un for. pos debe estar defenida como atributo de sesion, request o como en este caso de pageContext.La diferencia es que pageContext solo guarda la variable dentro de ese jsp.
Código HTML:
pageContext.setAttribute("pos", pos, pageContext.PAGE_SCOPE);
Código PHP:
        <%! Vector<ReservalistaReservas;
        
        
int posi;
        
int sizenumeroVentas;
        %>   
        <% 
        
listaReservas = (Vector<Reserva>)session.getAttribute("misReservas");
        
sizelistaReservas.size();
        
        if (
size == 0) {
        %>
        <
font color="red" size="4"Aun no ha realizado ninguna reserva como usuario registrado.</font>  
        <
br><br><br><br><br><br>
        <%
        }
        for ( 
pos0pos<sizepos++){
            
pageContext.setAttribute("pos"pospageContext.PAGE_SCOPE);
            
numeroVentaslistaReservas.get(pos).getVentasLista().size();;
        
        %>
        <%-- 
BLOQUE MODIFICAR RESERVA --%>
        <
br>
        <
form name="modificaReserva" action="ModificarReservaServlet">
            <
input type="hidden" name="accion" value="borrarReserva" readonly="readonly" />
            <
input type="hidden" name="localizador" value="${misReservas[pos].claveReserva}" readonly="readonly" />
            <
table border="1" width="400" cellspacing="0" cellpadding="4" bgcolor="FFFF66">
                <
thead>
                    <
tr>
                        <
th colspan="2">· RESERVA <%=pos+%> - LOCALIZADOR ${misReservas[pos].claveReserva·</th>
                        
                    </
tr>
                </
thead>
                <
tbody>
                    <
tr>
                        <
td align="right">Clase:   
                        </
td>
                        <
td>${misReservas[pos].ventasLista[0].tarifa.clase.nombreClase}</td>
                    </
tr>
                    
                    <
tr>
                        <
td align="right">Fecha de Salida:   
                        </
td>
                        <
td>${misReservas[pos].ventasLista[0].crucero.fechaSalida}</td>
                    </
tr>
                    <
tr>...... 

Esta tecnica es muy util para meter en una tabla el contenido de una lista o un vector. Espero vuestros comentarios y dudas.

Hasta la vista
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:41.