Newsgroup: it.comp.java
Titolo: javamail (problemi SMTP)

Ho scritto una funzione che, utilizzando javamail, dovrebbe spedire una
e-mail ad un destinatario specificato fra i parametri di ingresso. In
pratica il problema sussiste quando, collegandomi ad internet con Libero
Infostrada e specificando come stringa smtp (vedi funzione sotto)
"
smtp.libero.it
" lancia un'eccezione e non spedisce. Stranamente, invece,
collegandomi con un account tele2 e specificando "
smtp.tele2.it
" tutto
funziona. Mi sapreste spiegare perché succede questo e come ovviare?
Grazie
Tommaso
public static String sendmail(String mitt, String dest, String smtp, String
text) {
 boolean debug = false;
     //Set the host smtp address
     Properties props = new Properties();
     props.put("mail.smtp.host", smtp);
    // create some properties and get the default Session
    Session session = Session.getDefaultInstance(props, null);
    session.setDebug(debug);
    // create a message
    Message msg = new MimeMessage(session);
    // set the from and to address
    try{
    InternetAddress addressFrom = new InternetAddress(mitt);
    msg.setFrom(addressFrom);
    InternetAddress[] addressTo = new InternetAddress[1];
    addressTo[0] = new InternetAddress(dest);
    msg.setRecipients(
Message.RecipientType.TO
, addressTo);
    // Optional : You can also set your custom headers in the Email if you
Want
    msg.addHeader("Message from site", "Ospedale Civile di Catanzaro
(Pediatria)");
    // Setting the Subject and Content Type
    msg.setSubject("Comunicazione CC (From: Ospedale Civile CZ)");
    msg.setContent(text, "text/plain");
    Transport.send(msg);
 return "E-mail inoltrata con successo!";
 }
 catch(AddressException ae){
  return "Servizio momentaneamente mal funzionante. Riprovare piů tardi.";
 }
 catch(MessagingException ae){
  return "Servizio momentaneamente mal funzionante. Riprovare piů tardi.";
 }
}//sendmail

 "
smtp.libero.it
" lancia un'eccezione e non spedisce...
Il server smtp di libero dovrebbe essere 
mail.libero.it

 ha scritto nel messaggio
news:jx8rb.100365$vO5.3...@twister1.libero.it...


Forse non centra assolutamente niente e non so neanche come funziona
javamail, ma mi viene da dirti lo stesso:
hai controllato che libero accetti questo genere di servizi? Ultimamente sta
attuando una politica di restrizione dei servizi, tipo che non puoi più
controllare la tua casella di posta se non ti connetti con loro, che mi
sembra piuttosto fuori dal mondo... magari non accetta il tipo di servizi
che richiedi... (ma più probabilmente ho detto un ca##ata :)


 non funziona nemmeno mettendo 
mail.libero.it
Quale eccezione ti dà esattamente?
Gli indirizzi mittente e destinatario sono corretti ed esistenti?

 ha scritto nel messaggio
news:bojenl$uao$1...@nntp.atlavia.it...


 ha scritto nel messaggio
news:fIcrb.101039$vO5.3...@twister1.libero.it...


 per il disturbo.
Mah! Evidentemente era un problema di Libero... Negli ultimi giorni ci sono
stati parecchi problemi a livello di DNS e/o routing sulla loro rete...
Comunque se hai di nuovo dei problemi prova a fare un ping o un traceroute
al server per vedere che non si tratti di problemi di rete indipendenti dal
tuo programma.

 ha scritto nel messaggio
news:etfrb.104183$e6.37...@twister2.libero.it...


 ping? Traceroute? come si fanno e che servono?
Sono due comandi di rete. Per usarli apri il prompt dei comandi e scrivi
ping 
smtp.libero.it
oppure
tracert 
smtp.libero.it
ovviamente puoi mettere un qualunque nome di host o IP.
Il ping serve a vedere se una destinazione è presente / raggiungibile e ti
misura il tempo che ci mette un pacchetto ad andare e tornare.
Il traceroute invece di indica tutti i nodi intermedi (router) che il
pacchetto attraversa prima dia rrivare a destinazione.
Per sfizio ho provato a farli ed in effetti ci sono dei problemi su
smtp.libero.it
:
Esecuzione di Ping 
smtp.libero.it
 [193.70.192.50] con 32 byte di dati:
Richiesta scaduta.
Richiesta scaduta.
Richiesta scaduta.
Richiesta scaduta.
Rilevazione instradamento verso 
smtp.libero.it
 [193.70.192.50]
su un massimo di 30 punti di passaggio:
  1   162 ms   153 ms   155 ms  151.6.143.246
  2   156 ms   155 ms   150 ms  151.6.62.34
  3   216 ms   149 ms   154 ms  151.6.60.1
  4   158 ms   155 ms   155 ms  
MICA-T01-BOFI-B01-po01.wind.it
 [151.6.2.9]
  5   163 ms   163 ms   158 ms  
gw-mi-121-mica-t01-po03.wind.it
[151.6.2.170]
  6   162 ms   161 ms   157 ms  151.6.37.6
  7     *        *        *     Richiesta scaduta.
  8     *        *        *     Richiesta scaduta.
  9     *        *        *     Richiesta scaduta.
 10     *        *        *     Richiesta scaduta.
In effetti parrebbe esserci qualche problema... però c'è qualcosa che non mi
spiego. Infatti se io provo a spedire con Outlook Express tutto funziona
bene...
Allora ho provato anche a fare un bel
telnet 
smtp.libero.it
 25
e il server risponde tranquillamente. Ovviamente bisogna dialogarci coi
comandi dell'smtp.
A questo punto non saprei cosa dirti... è possibile che il server di posta
di libero sia dietro un firewall che impedisce il passaggio dei pacchetti
ICMP (che sono quelli che permettono il ping e il tracert) però permette il
passaggio dei pacchetti diretti al server di posta, e magari la javamail
oltre a gestire l'smtp fa qualche ping e quindi ottiene degli errori.
Bisognerebbe chiedere a qualche esperto di reti....