Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53

    [java-jsp] comunicazione

    salve ragazzi, ho delle pagine jsp su un server (che comunicano con un database) e dei frame java su un client. Vorrei sapere come è possibile inviare(e ricevere) dati dal frame alla pagina jsp.

    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Intendi dire che hai un'applicazione con GUI che gira sul client da cui vorresti inviare dati al JSP container (sia esso tomcat o che) ?
    Se è così, tramite i protocolli get/post, in funzione di quello che devi mandare - ossia dovrai avere una pagina JSP che sia in grado di processare dati come se provenissero da un form inviatogli appunto tramite get/post.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53
    Si è proprio questo che dovrei fare inviare dati memorizzati sul client (in delle text field) ad una pagina jsp, che interrogga a sua volta il database e ottenere la risposta dalla jsp.Potresti darmi più informazioni su questo protocollo ?

    Grazie Andrea

  4. #4
    Puoi usufruire delle classi URL e URLConnection. Qualcosa del genere dovrebbe fare al caso tuo. Il codice suppongo sia abbastanza chiaro da capire:

    Codice PHP:
    try {
         
    //Costruisco la stringa contenente i parametri da passare dalla pagina
         
    String data URLEncoder.encode("parametro1""UTF-8") + "=" URLEncoder.encode("valore1""UTF-8");
            
    data += "&" URLEncoder.encode("parametro2""UTF-8") + "=" URLEncoder.encode("valore""UTF-8");
        
         
    //invio la richiesta
         
    URL url = new URL("http://hostname:porta/pagina.jsp");
         
    URLConnection conn url.openConnection();
         
    conn.setDoOutput(true);
         
    OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
         
    wr.write(data);
         
    wr.flush();
        
         
    //Leggo la risposta
         
    BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
         
    String line;
         while ((
    line rd.readLine()) != null) {
                
    //faccio ciò che devo fare sulla riga letta
         
    }
         
    wr.close();
         
    rd.close();
    } catch (
    Exception e) {
         
    e.printStackTrace();

    In questo caso è stata eseguita una richesta di tipo POST, ed il codice è valido nelle ipotesi in cui la pagina jsp sia accessibile senza necessità di username e password. In caso contrario basta aggiungere un Authenticator. Se ti serve questa seconda eventualità, fammi sapere.
    Al mio segnale... scatenate l'inferno!

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53
    Se ho capito bene questo codice mi permette di mandare i paramatri coni rispettivi valori alla jsp e leggere la risposta della jsp. Per la comunicazione dalla jsp al client il funzionamento è lo stesso?



    Grazie di tutto davvero utile il codice di prima

  6. #6
    Ma la comunicazione tra la pagina jsp e il client è la risposta, ovvero la pagina stessa che viene generata (e restituita). Dal client poi dovrai analizzare la pagina ed estrapolare le informazioni che ti servono.
    Al mio segnale... scatenate l'inferno!

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53
    Ho messo in pratica il tuo esempio,con qualche modifica per adattarlo al mio caso.E' stato davvero utile. Per quanto riguarda l'Authenticator come bisognerebbe adoperarlo?


    Grazie ancora

  8. #8
    Per l'autenticazione basta richiamare la seguente riga prima dell'esecuzione del codice postato in precedenza:

    Codice PHP:
    Authenticator.setDefault(new MyAuthenticator()); 
    e definire una classe MyAuthenticator più o meno in questo modo:

    Codice PHP:
    public class MyAuthenticator extends Authenticator {
         
    //Metodo richiamato automaticamente quando un viene richeisto un URL protetto
         
    protected PasswordAuthentication getPasswordAuthentication() {
         
                
    String username "myusername";
                
    String password "mypassword";
        
                return new 
    PasswordAuthentication(usernamepassword.toCharArray());
         }

    Al mio segnale... scatenate l'inferno!

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.