Ho relizzato un semplice client di posta in Java con NetBeans 5.0. Il programma gira ma poi mi da errori quando tento di inviare il messaggio. Qualcuno mi puo' dire cosa non va? grazie a tutti.



* Main.java
*
* Created on 28 dicembre 2006, 16.37
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/

package nuovafinestra;
import java.awt.*;
import java.text.*;
import java.util.*;
import javax.swing.JOptionPane;
import javax.swing.*;
import javax.swing.text.*;
import javax.mail.internet.*;
import javax.mail.*;
import javax.activation.*;
import java.awt.event.*;
import java.io.*;
/**
*

*/
public class Main {

/** Creates a new instance of Main */
public Main() {
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
Finestra frame = new Finestra();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E);
frame.setVisible(true);
}

}

class Finestra extends JFrame
{
public Finestra()
{


setTitle("finestra client");
getContentPane().setLayout(null);
setSize(450,650);
setVisible(false);
Container contentPane = getContentPane();
JLabel da = new JLabel();
da.setText("Da : ");
da.setBounds(22, 20, 38, 12);
contentPane.add(da);
JLabel a = new JLabel();
a.setText("A : ");
a.setBounds(22, 60, 36, 12);
contentPane.add(a);
JLabel ogg = new JLabel();
ogg.setText("Oggetto : ");
ogg.setBounds(22, 100, 60, 15);
contentPane.add(ogg);
JLabel smtpserver = new JLabel();
smtpserver.setText("SMTP :");
smtpserver.setBounds(22, 140, 40, 12);
contentPane.add(smtpserver);
JLabel pop3 = new JLabel();
pop3.setText("POP3 :");
pop3.setBounds(22, 180, 40, 12);
contentPane.add(pop3);

_da = new JTextField();
_da.setBounds(80,20, 250, 23);
contentPane.add(_da);

_a = new JTextField();
_a.setBounds(80, 60, 250, 23);
contentPane.add(_a);

_ogg =new JTextField();
_ogg.setBounds(80, 100, 250, 23);
contentPane.add(_ogg);

_smtp = new JTextField();
_smtp.setBounds(80,140, 250, 23);
contentPane.add(_smtp);

_pop = new JTextField();
_pop.setBounds(80,180,250,23);
contentPane.add(_pop);

mes = new JTextArea(50,50);
mes.setLineWrap(true);
JScrollPane scrollPane = new JScrollPane(mes);
scrollPane.setBounds(22,250,400,150);
contentPane.add(scrollPane, BorderLayout.CENTER);
inviato = new JTextField(".......");
inviato.setBounds(140,500,190,30);
contentPane.add(inviato);
JButton invia = new JButton("Invia messaggio");
invia.setBounds(140,450,160,30);
contentPane.add(invia);
invia.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent ev){
System.out.println(_da.getText()+_a.getText()+_ogg .getText());
String str = mes.getText();
System.out.println(str);
inviato.setText("il mess e' stato inviato");
String desti = _a.getText();
String oggetto = _ogg.getText();
String testo = mes.getText();
Properties props = new Properties();
Session session = Session.getInstance(props);
try {
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(desti));
InternetAddress[] address = {new InternetAddress(desti)};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(oggetto);
msg.setSentDate( new Date());
msg.setText(testo);
Transport.send(msg);
}
catch(MessagingException mex) {
mex.printStackTrace();
}
}
});



}

private JTextField inviato;
private JTextField _da, _a, _ogg, _smtp, _pop;
private JButton invia;
private JTextArea mes;


}