Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Un esempio di applet: inviare una mail

Per poter inviare una email grazie all'interfaccia grafica disponibile con le Applet bisogna utilizzare il Package java.net che include la possibilità di dialogare con un Socket in internet, più precisamente aprire il Socket sulla porta 25 (di default) che si preoccupa di inviare i mesasggi di posta elettronica, la porta 25 o meglio il protocollo SMTP deve ricevere comandi SMTP (Simple Mail Transfer Protocol) in modo da creare ed inviare una struttura email perfettamente compatibile da tutti i client per leggere la posta.

Entriamo subito nella pratica e cominciamo a scrivere il codice necessario:

import java.applet.*;
import java.io.*;
import java.net.*;

class InviaMail extends Applet {
  public void init() {
    super.init(); // necessario per inizializzare la classe
    EMail = getParameter("email");
    setLayout(null);
    resize(346, 227);
    group1= new CheckboxGroup();
    label1=new Label("Applet FormMail", Label.CENTER);
    add(label1);
    label1.reshape(40,8,266,15);
    label2=new Label("Nome:");
    add(label2);
    label2.reshape(14,53,70,15);
    label3=new Label("Cognome:");
    add(label3);
    label3.reshape(14,90,70,15);
    label4=new Label("Età:");
    add(label4);
    label4.reshape(14,135,70,15);
    LavSi=new Checkbox("Si",group1, false);
    add(LavSi); LavSi.reshape(280,62,35,19);
    LavNo=new Checkbox("No",group1, false);
    add(LavNo);
    LavNo.reshape(280,83,35,22);
    Nome=new TextField(27);
    add(Nome);
    Nome.reshape(14,69,226,21);
    Cognome=new TextField(27);
    add(Cognome);
    Cognome.reshape(14,105,226,23);
    Eta=new TextField(7);
    add(Eta);
    Eta.reshape(14,150,63,23);
    label5=new Label("Lavora?",Label.CENTER);
    add(label5);
    label5.reshape(266,45,56,15);
    spedisci=new Button("Spedisci");
    add(spedisci);
    spedisci.reshape(14,189,88,27);
    azzera=new Button("Azzera");
    add(azzera);
    azzera.reshape(235,189,87,27);
    LavNo.setState(false);
    LavSi.setState(true);
  }

  public boolean handleEvent(Event event) {
    if (event.id== Event.ACTION_EVENT && event.target == spedisci) {
      aschito.net", 25);
      PrintStream os = new PrintStream(mailSocket.getOutputStream());
      int l,k,i;
      String User,Host;
      User="";
      Host="";
      for (l=i=0; i<EMail.length();i++)
        if(EMail.charAt(i)!='@')
          if(l==0) 
            User+=EMail.charAt(i);
          else 
            Host+=EMail.charAt(i);
        else 
          l=1;
        os.println("HELO "+Host);
        os.println("MAIL FROM: server@maschito.net");
        os.println("RCPT TO: "+User+"@"+Host);
        os.println("DATA");
        os.println("SUBJECT: Campi della Form");
        os.println("Nome: "+Nome.getText());
        os.println("Cognome: "+Cognome.getText());
        os.println("Eta: "+Eta.getText());
        if(LavSi.getState())
            os.println("Lavora");
        else
            os.println("Non lavora");
            os.println(".");
            os.println("QUIT");
            os.close();
            mailSocket.close();
  }
    
  CheckboxGroup group1;
  Label label1;
  Label label2;
  Label label3;
  Label label4;
  Checkbox LavSi;
  Checkbox LavNo;
  TextField Nome;
  TextField Cognome;
  TextField Eta;
  Label label5;
  Button spedisci;
  Button azzera;
  String EMail;
}
Una volta terminata la Classe, non ci resta che compilarla e inserire il codice HTML, necessario per la visualizzazione dell'Applet.

Abbiamo aggiunto un parametro dall'esterno, cioè l'indirizzo email del mittente (parametro che viene catturato dal metodo getParameters()).

(L'articolo continua più sotto...)

Per impostare il codice HTML con dei parametri osservate l'esempio seguente:

<applet code="InviaMail.class" width="400" height="300">
<param name="email" VALUE="Vostro_Indirizzo@EMail.tk">
</applet>

Corsi
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. A partire da 49 €.
Corso Ruby e Ruby On RailsCorso Ruby e Ruby On Rails
Creare software ed applicazioni Web con Ruby e ROR. A partire da 49 €.
Sommario
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122