Pembukaan
Tutorial cara mengirim email menggunakan java swing adalah tutorial yang cukup mudah. Mengirim email ini menggunakan layanan google mail (SMTP), sehingga kita tidak perlu melakukan konfigurasi yang rumit. Biasanya pengiriman email melalui aplikasi sangat lah jarang, terutama pada aplikasi desktop (terkecuali aplikasi untuk perusahaan besar). Karena beberapa orang masih suka bertanya bagaimana mengirim email menggunakan java, kali ini saya berikan langsung menggunakan swing (GUI).
Pembahasan
Pertama kali yang wajib kita perhatikan adalah layanan google mail mengizinkan aplikasi kita agar dapat mengakses google mail.
- Display Unlock Captcha , silahkan enable dengan cara pilih tombol Continue.
- Less Secure Apps , jika Allow less secure apps masih dalam kondisi OFF maka pada radio button di klik dalam kondisi warna biru.
- Download library JavaMail API
Selanjutnya silahkan buat interface form untuk mengirim pesan dengan JFrame Form, lihat gambar dibawah saja (saya anggap anda sudah bisa membuat iterface jika belum silahkan pelajari tutorial sebelumnya di blog ini).
Komponen | Text | Variable | Fungsi |
---|---|---|---|
JFrame | - | - | Merupakan form utama dari aplikasi |
Jlabel | Kirim kepada dan Subjek | jLabel1 dan jLabel2 | Merupakan label penjelas pada form |
jTextField | - | penerima dan subjek | Form yang paling pertama adalah untuk email tujuan dan setelahnya adalah subjek email |
jTextArea | - | isi | Merupakan textarea untuk memasukan pesan email |
jButton | Kirim dan Bersihkan | btn_kirim dan btn_bersihkan | Tombol untuk mengirim dan tombol bersihkan seluruh form |
Lakukan import library mail-1.4.7.jar pada package yang kita gunakan, setelah berhasil silahkan ketikan kode program dibawah pada bagian
private void btn_kirimActionPerformed(java.awt.event.ActionEvent evt) {
}
private void btn_kirimActionPerformed(java.awt.event.ActionEvent evt) {
try {
Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.port", "587");
Session session = Session.getInstance(props, new EmailAuth());
Message pesan = new MimeMessage(session);
InternetAddress dari = new InternetAddress("namaemail@gmail.com", "Dari Java Source Code");
pesan.setFrom(dari);
InternetAddress tujuan = new InternetAddress(penerima.getText());
pesan.setRecipient(Message.RecipientType.TO, tujuan);
pesan.setSubject(subjek.getText());
pesan.setText(isi.getText());
Transport.send(pesan);
JOptionPane.showMessageDialog(null,"Email berhasil terkirim ke "+penerima.getText());
} catch (UnsupportedEncodingException | MessagingException ex) {
JOptionPane.showMessageDialog(null, ex);
}
}
Apabila didapatkan pesan tanda error, cukup klik kanan pada lembar kerja kemudian pilih Fix Imports atau dengan cara tekan keyboard CTRL+SHIFT+I sampai tampil gambar dibawah kemudian klik OK.
Gambar 2 |
Setelah selesai, ada satu tanda lagi tepat pada bagian
Session session = Session.getInstance(props, new EmailAuth());
sederhananya adalah dengan menekan tanda lampu warning, kemudian pilih Create Class EmailAuth in javascmailer.JavaScMailer, lihat pada gambar dibawah.
Gambar 3 |
private static class EmailAuth extends Authenticator {
public EmailAuth() {
}
}
Ubah dengan kode program dibawah. private static class EmailAuth extends Authenticator {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("email@kamu.com", "passwordemailkamu");
}
}
Dengan ketentuan email@kamu.com merupakan alamat email yang digunakan untuk mengirim pesan, dan passwordemailkamu adalah password dari email yang digunakan. Jika ada pesan error maka cukup Fix Import kembali. Tahap terakhir adalah pada bagian tombol bersihkan, silahkan saja tambah kode program berikut pada btn_bersihkanActionPerformed.
private void btn_bersihkanActionPerformed(java.awt.event.ActionEvent evt) {
penerima.setText("");
subjek.setText("");
isi.setText("");
}
Tahap terakhir adalah melakukan ujicoba untuk mengirim email, jika anda berhasil mengirim emailnya maka akan tampil seperti gambar dibawah.
Gambar 4 |
Gambar 5 |
Penutup
Sekian tutorial Cara Mengirim Email Menggunakan Java Swing, untuk pertanyaan silahkan bertanya pada kolom komentar. Untuk kali ini saya tidak menyediakan link download kode program dari tutorial Cara Mengirim Email Menggunakan Java Swing.
Kalo yang mengirimnya secara terjadwal bagaimana min?
BalasHapus