Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [servlet] sessioni

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    157

    [servlet] sessioni

    Salve... ho creato un arrai di stringhe in una servlet e adesso vorrei passarlo ad una jsp e ho pensato di passarlo tramite una variabile di sessione in questo modo:

    codice:
     
    
      Object unvettore[]= new Object[50];
             
            Object dispari, pari;
            dispari="pico";
            pari="pallino";
              for(int i=0; i<50; i++){
                  if((i%2) == 0)
                  unvettore[i]=pari;
                  else
                  unvettore[i]=dispari;
              }
     
                session.setAttribute("array",unvettore);
            
              request.getRequestDispatcher("vet.jsp").forward(request,response);
    e nella jsp:

    codice:
     <%     Object a=session.getAttribute("array"); 
               for(int i=0; i<50; i++)
               out.println(a[i]);
               %>

    solo che mi da questo errore:

    array required, but java.lang.Object found
    out.println(a[i]);
    ^
    1 error

    Potete aiutarmi, magari con qualche esempio, per favore???

    Vi ringrazio anticipatamente e vi auguro tanti auguri poer il nuovo anno!
    Ciao
    Tutto ciò che non mi uccide mi rende più forte!

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    dovresti fare il cast a vettore, ossia nella JSP invece di

    Object a = ...

    devi mettere:

    codice:
    int[] a = (int[])session.getAttribute("array");
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    157
    Scusa l'ignoranza... ho provato a fare cosi:


    codice:
    <%!
               int[] a = (int[])session.getAttribute("array"); 
                
            %>
             <%  for(int i=0; i<50; i++)
               out.println(a[i]);
               %>
    e mi da quest'errore:
    cannot find symbol
    symbol : variable session
    location: class org.apache.jsp.vet_jsp
    int[] a = (int[])session.getAttribute("array");


    poi ho provato in quest'altro modo:

    codice:
    <%
               int[] a = (int[])session.getAttribute("array"); 
               for(int i=0; i<50; i++)
               out.println(a[i]);
               %>
    e mi dice:

    The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    org.apache.jasper.JasperException: Exception in JSP: /vet.jsp:17

    14: <h1>Vettore</h1>
    15: <%-- Object a = (Object[])session.getAttribute("array");--%>
    16: <%
    17: int[] a = (int[])session.getAttribute("array");
    18:
    19:
    20: for(int i=0; i<50; i++)


    Puoi aiutarmi? sono disperato!!!
    Tutto ciò che non mi uccide mi rende più forte!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    hai segni e roba varia ovunque... togli i -- inutili qui e lì intanto.
    Poi questo funziona alla grande:

    codice:
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
       
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page - Array e Sessioni</title>
        </head>
        <body>
            <h2>Questo è l'array che salvo in sessione</h2>
            <%
              int[] a = {10, 20, 30};
              for (int i = 0; i < a.length; i++) {
                  out.println((i+1)+"° -> "+a[i] + "
    " );
              }
              session.setAttribute("array", a);
            %>
            <h2>Questo lo recupero dalla sessione</h2>
            <% 
              int[] b = (int[])session.getAttribute("array");
              for (int i = 0; i < b.length; i++) {
                  out.println((i+1)+"° -> "+b[i] + "
    " );
              }
            
            %>
        </body>
    </html>
    Provare per credere.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    157
    Grazie mille.. Funziona benissimo

    Ancosa auguri di buon anno...

    Un apiccola domandina...

    con le sessioni è possibile mandare oltre array anche liste da servlet a Jsp? Io credo di si m a non se sono sicuro!!!
    Tutto ciò che non mi uccide mi rende più forte!

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    in sessione puoi salvare tutto quello che vuoi: salva infatti un Object. Sta a te fare il cast opportuno al tipo di oggetto reale.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.