Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026

    Controllo valori su pagina jsp

    Salve.
    Sto facendo una semplice applicazione jsp dove in una pagina ho un form dove inserisco dei valori interi, mentre nella seconda pagina riceve i valori è fa la somma degli stessi.
    Solo che vorrei mettere un controllo nella seconda pagina, in modo tale che se non viene inserito alcun numero intero, di default gli posso assegnare dei valori:
    codice:
                    <%
                    int v1 = Integer.parseInt(request.getParameter("v1"));
    		int v2 = Integer.parseInt(request.getParameter("v2"));
    		 %>
    
    		 <% //if (v1 == null && v2 == null) %>
    		 
            <% Sommatoria a = new Sommatoria();%>
            <% int c=(a.somma(v1,v2)); %>
    		
    
    		<% out.println(a.messaggio()+ c); %>
    Ho provato con la condizione if, ma da errore. Lavoro con eclipse e mi da questo tipo di risposta:
    Multiple annotations found at this line:
    - The operator == is undefined for the argument type(s)
    int, null
    - Syntax error on token "==", Expression expected after this
    token
    Non so che pesci prendere.
    Grazie di una mano.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    un tipo primitivo non può essere null...

  3. #3
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Scusa Vindav, forse ho alcune cose che mi sfuggono, ma che valore può assumere un tipo primitivo? Cioè un tipo primitivo deve avere forzatamente un valore come zero oppure un valore casuale della memoria?
    Ma allora è meglio utilizzare controlli javascript o si può rimediare solo con java?

  4. #4
    un valore primitivo deve essere valorizzato, per quanto rigurda gli interi essi vengono messi a 0. Per quanto riguarda il tuo controllo basta che cambi le prime due righe in questo modo
    codice:
     Integer v1 = new Integer(request.getParameter("v1"));
     Integer v2 = new Integer(request.getParameter("v2"));
    In questo modo usi la wrapper class per i numeri interi che è un oggetto a tutti gli effetti e su cui è lecito chiamare == null.

  5. #5
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    un valore primitivo deve essere valorizzato, per quanto rigurda gli interi essi vengono messi a 0. Per quanto riguarda il...
    Ho provato a fare così:
    codice:
    <%
    Integer v1 = new Integer(request.getParameter("v1"));
    Integer v2 = new Integer(request.getParameter("v2"));
    		 %>
    		<% Sommatoria a = new Sommatoria();
    		  if (v1 == null && v2 == null) 
    	        {
                    	c=(a.somma(5,5));
            	        out.println(a.messaggio()+ c);
                     } else {
                    	c=(a.somma(v1,v2));
               	        out.println(a.messaggio()+ c);
                          } %>
    Se non inserisco niente nel text-box, il server mi blocca sulla prima linea cioè su
    Integer v1 = new Integer(request.getParameter("v1"));
    Così anche sè l'oggetto v1 è null non posso fare alcun controllo.

  6. #6
    Prima di tutto un doveroso consiglio : Non cimentarti nella programazione senza avere almeno un buona base teorica, studia prima le basi e poi comincia a programmare.
    Ritornando al problema, è ovvio che se non metti niente nella text box request.getParamemeter(...) restituisce null, e non puoi costruire un integer con "null", per ovviare al problema basta fare un if(request.getParamemeter(...) == null) then... else ...

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.