Jsp Negozio su Eclipse

di il
27 risposte

27 Risposte - Pagina 2

  • Re: Jsp Negozio su Eclipse

    Praticamente dovrei creare una classe carrello;
    creare al suo interno un metodo he mi permette di aggiungere gli articoli all'interno;
    passare tutto questo in sessione e richiamarlo sulla jsp ?
  • Re: Jsp Negozio su Eclipse

    Repa235 ha scritto:


    Praticamente dovrei creare una classe carrello;
    creare al suo interno un metodo he mi permette di aggiungere gli articoli all'interno;
    passare tutto questo in sessione e richiamarlo sulla jsp ?
    Grosso modo sì. Ma devi ragionare bene su come "modellare" le cose e poi realizzarle tenendo presente cosa detto prima (gli oggetti in sessione dovrebbero essere Serializable e devi considerare la sincronizzazione tra thread).

    Tanto per dirne una (che non è stata detta da te o me prima). Quando si parla di un "carrello" generalmente si gestisce anche una "quantità" associata a ciascun prodotto nel carrello. Come la gestisci (ammesso di volerlo fare)? Ci sono diverse possibilità.
  • Re: Jsp Negozio su Eclipse

    E se volessi realizzare qualcosa coi cookie ?
  • Re: Jsp Negozio su Eclipse

    Praticamente i div del mio carrello sono costituiti da:

    		<!-- items -->
    		<% for(Prodotto p1:prodotti){ 
        String linkimmagine = ("Prodotti/"+p1.getCodice()+".jpg");
        %>
    
    
    		<div class="items">
    			<!-- single item -->
    			<div class="item">
    
    				<div class="zoom pic">
    					<img src="<%= linkimmagine %>" alt="item" width="200px"
    						height="200px" />
    				</div>
    				<h2>
    					<%= p1.getMarca()  %>
    					,
    					<%= p1.getNome()  %>
    				</h2>
    				<p>
    					Disponibili :
    					<%= p1.getQuantitá()  %>
    					<br> Prezzo : <em><%= p1.getPrezzo()  %> </em>
    				</p>
    				<button class="aggiungi" type="button">Aggiungi</button>
    
    			</div>
    
    
    			<% } %>

    non riesco a capire cosa devo associare al tasto aggiungi .

    che sia settare in sessione un attributo o settare un cookie .

    qualsiasi soluzione provi mi porta sempre fuoristrada.
  • Re: Jsp Negozio su Eclipse

    Repa235 ha scritto:


    E se volessi realizzare qualcosa coi cookie ?
    I cookie li si gestisce o lato client tramite scripting in Javascript (eventualmente può essere utile anche per il resto una libreria specifica) ... oppure lato server dove i cookie possono essere ricevuti dal server a fronte di una request ed inviati al client nella response.

    Repa235 ha scritto:


    che sia settare in sessione un attributo o settare un cookie .

    qualsiasi soluzione provi mi porta sempre fuoristrada.
    Quel <button>, da solo e così come è scritto/usato non serve a nulla. E scegli (visti i mille dubbi) la soluzione semplice: l'uso della sessione lato server.
    Ogni volta che l'utente cliccherà su "Aggiungi", deve essere fatta una request ad una risorsa lato server (Servlet preferibilmente) passando un ID del prodotto. Puoi usare un semplice link <a> oppure un <form> (tipicamente in POST).
  • Re: Jsp Negozio su Eclipse

    Praticamente il bottone aggiungi dovrebbe diventare:
    	<a href="/Carrello?id=<% p1.getCodice(); %>"> AGGIUNGI </a> 
    e fin qui credo di esserci .

    poi dal lato servlet come faccio ad aggiungere più prodotti in un unica volta ?
  • Re: Jsp Negozio su Eclipse

    Repa235 ha scritto:


    	<a href="/Carrello?id=<% p1.getCodice(); %>"> AGGIUNGI </a> 
    e fin qui credo di esserci .
    Scritto così no. Semmai:

    <a href="/Carrello?id=<%= p1.getCodice() %>"> AGGIUNGI </a>

    Repa235 ha scritto:


    poi dal lato servlet come faccio ad aggiungere più prodotti in un unica volta ?
    Con un link del genere (corretto, naturalmente) aggiungeresti 1 solo prodotto per volta nel carrello. Se vuoi poterne aggiungere di più in un unico "colpo" dalla lista dei prodotti, le cose cambiano. Dovresti mettere es. un "checkbox" a fianco di ciascun prodotto, chiaramente servirebbe poi un <form> e l'utente marca quelli che vuole e con un pulsante specifico richiede l'aggiunta. Insomma, cambia l'interazione con l'utente e anche lato server la gestione, ovviamente (riceverai un "elenco" di id e non solo uno).
  • Re: Jsp Negozio su Eclipse

    Benissimo , questo form con checkbox come dovrebbe essere strutturato all'interno del mio for?
  • Re: Jsp Negozio su Eclipse

    Repa235 ha scritto:


    Benissimo , questo form con checkbox come dovrebbe essere strutturato all'interno del mio for?
    A livello di HTML finale, qualcosa del tipo:
    <form action="/Carrello" method="POST">
      <table border="1">
        <tr>
          <td>Prodotto A</td>
          <td><input type="checkbox" name="id" value="1000"> Carrello</td>
        </tr>
        <tr>
          <td>Prodotto B</td>
          <td><input type="checkbox" name="id" value="1001"> Carrello</td>
        </tr>
      </table>
      
      <input type="submit" value="AGGIUNGI NEL CARRELLO">
    </form>
    Chiaramente fatto graficamente più "decente" di questo sopra. Il tuo "for" genererà N <tr> (se non vuoi una tabella, chiaramente qualunque altra struttura "ripetibile" per mostrare i prodotti)

    Quando l'utente fa il submit del form, per ciascun checkbox marcato viene inviato un parametro id=NNNN. Quindi lato server riceverai N valori per lo stesso parametro "id". E li prendi con request.getParameterValues("id") che dà un String[]
  • Re: Jsp Negozio su Eclipse

    
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>QUALCOSA DAL CARRELLO ?</title>
    </head>
    <body>
    <%@ include file="/header.jsp"%>
    
    <% 
    
    Vector<Prodotto> carrello = (Vector<Prodotto>)session.getAttribute("carrello");
    
    
    %>
    
    <a href="VisualizzaProdotti"> Continua lo shopping</a>
    <table style="height: 251px;" width="587">
    <tbody>
    <tr style="height: 21px;">
    <td style="width: 188px; height: 21px;"></td>
    <td style="width: 188px; height: 21px;">Prodotto</td>
    <td style="width: 188px; height: 21px;">Quantit&agrave;</td>
    <td style="width: 189px; height: 21px;">Prezzo</td>
    <td style="width: 189px; height: 21px;">Elimina</td>
    </tr>
    
    
    		<% 
    
    		for(Prodotto p:carrello){ 
        String linkimmagine = ("Prodotti/"+p.getCodice()+".jpg");
        
        
        %>
        
    <tr style="height: 21px;">
    <td style="width: 188px; height: 21px;"><img alt="" src="<%= linkimmagine%>" style="width: 80%;"></td>
    <td style="width: 188px; height: 21px;"><%=p.getMarca()%>&nbsp;</td>
    <td style="width: 188px; height: 21px;"> QUANT  </td>
    <td style="width: 189px; height: 21px;"><%=p.getPrezzo() %>&nbsp;</td>
    <td style="width: 189px; height: 21px;"><a href="RimuoviCarrello?id=<%=p.getCodice()%>"> Elimina </a></td>
    <% } %>
    </tbody>
    </table>
    
    <a href="#">ORDINA PRODOTTI</a>
    
    </body>
    </html>
    
    

    ok, sono riuscito a creare una servlet che mi permette di aggiungere un prodotto al carrello e una servlet che mi permette di rimuovere.

    ora vorrei creare:
    -una servlet che mi permetta di visualizzae il carrello(per adesso viene visualizzata la jsp sopra solo quando clicco aggiungi);
    -un qualcosa per gestire le quantità da ordinare dove ho scritto QUANT nella jsp sopra;
    -una servlet che mi permetta di confermare l'acquisto;

    come posso fare ?
  • Re: Jsp Negozio su Eclipse

    
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>QUALCOSA DAL CARRELLO ?</title>
    </head>
    <body>
    <%@ include file="/header.jsp"%>
    
    <% 
    
    Vector<Prodotto> carrello = (Vector<Prodotto>)session.getAttribute("carrello");
    
    
    %>
    
    <a href="VisualizzaProdotti"> Continua lo shopping</a>
    <table style="height: 251px;" width="587">
    <tbody>
    <tr style="height: 21px;">
    <td style="width: 188px; height: 21px;"></td>
    <td style="width: 188px; height: 21px;">Prodotto</td>
    <td style="width: 188px; height: 21px;">Quantit&agrave;</td>
    <td style="width: 189px; height: 21px;">Prezzo</td>
    <td style="width: 189px; height: 21px;">Elimina</td>
    </tr>
    
    
    		<% 
    
    		for(Prodotto p:carrello){ 
        String linkimmagine = ("Prodotti/"+p.getCodice()+".jpg");
        
        
        %>
        
    <tr style="height: 21px;">
    <td style="width: 188px; height: 21px;"><img alt="" src="<%= linkimmagine%>" style="width: 80%;"></td>
    <td style="width: 188px; height: 21px;"><%=p.getMarca()%>&nbsp;</td>
    <td style="width: 188px; height: 21px;"> QUANT  </td>
    <td style="width: 189px; height: 21px;"><%=p.getPrezzo() %>&nbsp;</td>
    <td style="width: 189px; height: 21px;"><a href="RimuoviCarrello?id=<%=p.getCodice()%>"> Elimina </a></td>
    <% } %>
    </tbody>
    </table>
    
    <a href="#">ORDINA PRODOTTI</a>
    
    </body>
    </html>
    
    

    ok, sono riuscito a creare una servlet che mi permette di aggiungere un prodotto al carrello e una servlet che mi permette di rimuovere.

    ora vorrei creare:
    -una servlet che mi permetta di visualizzae il carrello(per adesso viene visualizzata la jsp sopra solo quando clicco aggiungi);
    -un qualcosa per gestire le quantità da ordinare dove ho scritto QUANT nella jsp sopra;
    -una servlet che mi permetta di confermare l'acquisto;

    come posso fare ?
  • Re: Jsp Negozio su Eclipse

    Repa235 ha scritto:


    -una servlet che mi permetta di visualizzae il carrello(per adesso viene visualizzata la jsp sopra solo quando clicco aggiungi);
    Una Servlet non farebbe molto di più. Giusto vedere che ci siano dei prodotti in sessione (che vuoi/pensi debba succedere se qualcuno chiede il carrello e NON c'è proprio quell'attributo in sessione?) e poi alla fine fare il forward alla jsp.

    Repa235 ha scritto:


    -un qualcosa per gestire le quantità da ordinare dove ho scritto QUANT nella jsp sopra
    E la quantità dove pensi di tenerla? In Prodotto? Se sì, ok. Se non puoi/non vuoi tenerla in Prodotto .. devi "modellare" diversamente le cose. Ad esempio un'ulteriore classe ProdottoCarrello che contiene Prodotto e quantità.

    Repa235 ha scritto:


    -una servlet che mi permetta di confermare l'acquisto
    Dovresti precisare cosa intendi per "confermare l'acquisto". In scenari "reali" la conferma di un acquisto può "scatenare" sicuramente svariate cose.
  • Re: Jsp Negozio su Eclipse

    Purtroppo non riesco a capire come gestire la quantità , volendo trasformare la jsp della visualizzazione dei prodotti come un form, come farei a gestire questa situazione ?
Devi accedere o registrarti per scrivere nel forum
27 risposte