Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19

Discussione: Problema pagina jsp

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    13

    Problema pagina jsp

    Salve a tutti io ho un problema con una pagina jsp di un sito per scuola!...il sito consiste nell'autonoleggio di auto, un utente dopo essersi loggato , scelto l'auto che vuole prenotare, inserisce la data di inizio e la data di fine prenotazione e gli appare a quanto ammonta il totale.Il mio problema si presenta nella pagina che va a inserire nel DB i dati della prenotazione cioè: datainizio , datafine ,prezzo ecc... Vi posto qui sotto il codice:

    codice:
    <%@page language="java" import="java.sql.*"%><%@page import="java.util.Enumeration" %>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <%@page import="java.util.Date" %>
    <%@page import="java.text.SimpleDateFormat"%>
    <%@ page language="java" import="java.text.NumberFormat.*" %>
    <html>
       <head>
           <meta http-equiv="refresh" content="4; url=index.html">
             <LINK REL="stylesheet" type="text/css" href="style.css">
    <script language="Javascript" type="text/javascript">
    </script>
    </head>
    
    
    <body background="page_background.jpg">
     
    
    
    %>
            <%             
                      try{      
                           int idauto=Integer.parseInt(request.getParameter("idauto"));  
                           String mia=request.getParameter("datainserita");
                           String mia2=request.getParameter("datainserita");
                           String g=mia.substring(0,2);
                           String m=mia.substring(3,5);
                           String a=mia.substring(6,10); 
                           String g2=mia2.substring(0,2);
                           String m2=mia2.substring(3,5);
                           String a2=mia2.substring(6,10);
                           String data=a+"-"+m+"-"+g;
                           String data2=a2+"-"+m2+"-"+g2;                                                                                                                      
                           int prezz=Integer.parseInt(request.getParameter("prezzo"));
                           int totale=0;
                           int numgg=Integer.parseInt(request.getParameter("numg"));
                           totale=prezz*numgg;                     
                           
           
           
           Class.forName("com.mysql.jdbc.Driver");
                     String connectionUrl = "jdbc:mysql://127.0.0.1:3306/noleggio?" +
                                            "user=root&password=";
                     Connection con = DriverManager.getConnection(connectionUrl);
                     Statement st= con.createStatement();
                     ResultSet rs = st.executeQuery("Select * from prenotare where datai>='"+data+"' and datai<='"+data2+"'dataf<='"+data+"' and dataf>='"+data2+"' ");              
                     if(rs.next()){
                         
                    
                     int rs1 = st.executeUpdate("INSERT INTO prenotare(ceauto,datai,dataf,totale,numg)"
                             + " VALUES('"+idauto+"','"+data+"','"+data2+"','"+totale+"','"+numgg+"')" );
                                    }
                                                                         
              
           %>
          
           <%    
              rs.close();
              st.close();
              con.close();
          
         } catch (SQLException e) {
              System.out.println("SQL Exception: " + e.toString());
         } catch (ClassNotFoundException cE){
              System.out.println("Class Not Found Exception: " + cE.toString());
         }                     
      %>
           
    <div id="header-wrapper">
    	<div id="header">
    		<div id="logo">
              <h1>autonoleggio</h1>
    			
    
    
    	  </div>
    	</div>
    </div>
    
    
    	
    	<div id="page">
    		<div id="page-bgtop">
    			<div id="page-bgbtm">
    				<div id="content">
    					<div class="post">
    						<h2 class="title">Prenotazione effettuata</h2>
    
    
                                                    
                                                   
                                                    
    
    Grazie per aver prenotato l'auto verrai reindirizzato alla pagine principale!
                                                        
                                                    </p>
                                                     
                                                    
                                                   
                                            </div>
                                    </div>
                            </div></div></div>
    L'errore che compare è questo: org.apache.jasper.JasperException: java.lang.NumberFormatException: null non so proprio dove sia l'errore! Grazie.

  2. #2

    Re: Problema pagina jsp

    Originariamente inviato da kakarof
    L'errore che compare è questo: org.apache.jasper.JasperException: java.lang.NumberFormatException: null non so proprio dove sia l'errore! Grazie.
    Significa che si aspetta un numero, ma gli stai passando un valore nullo.
    Evidentemente non riesci a recuperare i valori dalla variabile di scope.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    13
    dalla variabile di scope??cioè??....quale potrebbe essere la soluzione?

  4. #4
    Originariamente inviato da kakarof
    dalla variabile di scope??cioè??....quale potrebbe essere la soluzione?
    Mi riferivo a quell'unica variabile di scope che utilizzi nel tuo frammento di codice: request.

    Quindi il problema sorge in una delle righe in cui invochi:
    Integer.parseInt(request.getParameter( ... ));.

    Dovresti aggiungere un controllo per evitare che al metodo vengano passati valori nulli.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    13
    Quindi dici che quel request passa un valore nullo!...come potrebbe essere strutturato il controllo?...pero come logica dovrebbe andare bene o no?Grazie per l aiuto!

  6. #6
    Originariamente inviato da kakarof
    Quindi dici che quel request passa un valore nullo!
    Si, perchè probabilmente nel form della pagina che invoca la tua jsp manca un parametro/campo o viceversa nella tua jsp, non volendo, hai confuso il nome di un parametro.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    13
    mmm non mi sembra guarda:

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>PRENOTAZIONE</title>
    <link rel="stylesheet" href="style.css" />
     <%@ page language="java" import="java.sql.*" %>
            <%@ page language="java" import="javax.swing.*" %>
            <%@ page language="java" import="java.util.*" %>
     
               
               <script type="text/javascript">
        
    function calcolodata() {
    inizio=document.modulo.datai.value;
    fine=document.modulo.dataf.value;
    
    var veti = inizio.split('/');
    iniziodata = new Date( veti[2], veti[1]-1, veti[0]);
    
    var vetf = fine.split('/');
    finedata = new Date( vetf[2], vetf[1]-1, vetf[0]);
    
    document.modulo.numg.value=parseInt((finedata-iniziodata)/86400000);
    }
    
    </script>
    </head>
    
    <body >
    
    <div id="menutot">
    	<div id="menu">
    		<ul>
    			[*]Homepage
    			[*]Info
    			<li class="pagcorrente">ParcoAuto
    			[*]Link Utili
    			<li >Contatti
    		[/list]
    	</div>
    	
    </div>
    <div id="intetot">
    	<div id="intestazione">
    		<div id="titolo">
              <h1>autonoleggio</h1>
              
    
    </p>
    	  </div>
    	</div>
    </div>
    
    <div id="wrapper">
    	
    	<div id="paginaintera">
                <div id="page-bgtop">
                        
                                                                              
         
          </div>
    			<div id="page-bgbtm">
                                
                           <h1>Numero di Giorni</h1>
                          
    <form action="inserimento2.jsp" name="modulo"  onsubmit="return calcolodata();">       
    <table>
    <tr><td>Data iniziale</td><td>Data finale</td><td>Numero di giorni</td></tr>
    <tr>
    <td><input type="text" name="datai" size="10" value="gg/mm/aaaa"></input></td>
    <td><input type="text" name="dataf" size="10" value="gg/mm/aaaa"></input></td>
    <td align="center"><input type="text" name="numg" size="4" maxlength="4" value=""></input></td></tr>
    <tr><td colspan="3" align="center">
            <input type="submit" name="Prenota" ></input>
    </td></tr>
    
    </table>
        </form>
    praticamente viene inserita la data di inizio e fine prenotazione, appena preme il bottone calcola i giorni mancati e ti invia nella pagina che dovrebbe inserire i dati nel db!

  8. #8
    Il problema dovrebbe essere in questo pezzo di codice:
    codice:
    int prezz=Integer.parseInt(request.getParameter("prezzo"));
    In quanto il parametro "prezzo" nn è dichiarato nel form

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    13
    Ma il prezzO non è dichiarato perché con il request prende direttamente il valore dal db...se non sbaglio!

  10. #10
    Si e magari è anche vero che gli asini volano....

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.