Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    riempire una finestra

    Ciao a tutti,
    sto cercando di imparare ad utilizzare le JSP e le servlet. Ho un problema molto stupido, ma che non so risolvere. Devo mettere in una combo box che sta nella JSP il risultato di una query che si trova nella servlet, ma non so proprio come fare.
    Nella servlet ho
    public void nome(){
    String query1 = "SELECT DISTINCT (nome) FROM Dati; ";
    Vector nome = ItaliaDataAccessor.getNomeByQuery(query1);
    req.setAttribute("nome",nome);
    }

    Forse ho fatto degli errori anche in questo pezzo di codice, non so.
    Se qualcuno può darmi una mano, lo ringrazio

    Ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    ti consiglio di leggere anche il post di dybart sul settaggio dell' ODBC nel pannello di controllo se non l'hai già fatto, poi x la connessione fa una cosa del genere:


    String query1 = "SELECT nome FROM Dati ";

    String strDriver="sun.jdbc.odbc.JdbcOdbcDriver";
    String strNomeConnessione="jdbcdbc:nome_tuo_database";
    Class.forName(strDriver);
    Connection conn=null;
    conn=DriverManager.getConnection(strNomeConnession e);
    Statement stmDb=conn.createStatement();
    ResultSet rsRisultato=null;
    rsRisultato=stmDb.executeQuery(query1);

    poi nella combox (ora non ricordo la sintassi della combox) metti:

    value="rsRisultato.getString("nome")"

  3. #3
    grazie per i consigli però credo di non essermi spiegata tanto bene. La connession con il DB l'ho già fatta adesso devo solamente fare una query che è appunto
    SELECT DISTINCT (nome) FROM Dati;

    e poi non so bene come fare per prendere il suo risultato e metterlo in una variabile o non so per fare in modo che possa riprendere questi valori (che sono nella servlet) dalla Jsp.

    ti ringrazio ancora tanto

  4. #4
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    hai fatto bene a mettere l'attributo in request... poi pero' dalla servlet come chiami la jsp? posta il codice che ti manda alla vista...

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    x combo box intendi una select? se così prova con:


    <select size="1" name="D1">
    <option><%=(rsRisultato.getString("nome"));%></option>
    </select>

    vedi nella risposta di prima cosa intendo x la variabile rsRisultato.

  6. #6
    ciao e grazie per il tuo aiuto. Comunque io ho messo semplicemente questo

    public void nome(){
    String query1 = "SELECT DISTINCT (nome) FROM Dati; ";
    Vector nome = ItaliaDataAccessor.getNomeByQuery(query1);
    req.setAttribute("nome",nome);
    RequestDispatcher rda = sca.getRequestDispatcher("/attivita_comm.jsp");
    rda.forward(request,response);
    }

    nella servlet

  7. #7
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    req.setAttribute("nome",nome);
    RequestDispatcher rda = sca.getRequestDispatcher("/attivita_comm.jsp");
    rda.forward(request,response);
    cos'e' "sca"? poi scusa ma mi sembra che setti l'attributo in "req" e poi forwardi "request"...
    prova semplicemente
    codice:
    req.setAttribute("nome",nome);
    req.getRequestDispatcher("/attivita'_comm.jsp").forward(req, response);
    poi dalla jsp prova a recuperare il tuo attributo che hai messo in request (che si chiamava "nome" mi pare) con
    codice:
    <%= request.getAttribute("nome") %>
    oppure, se usi le taglib jstl
    codice:
    <c:out value="${requestScope.nome}"/>

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.