Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ReadEmailStep {
- public static void main(String[] args) {
- // for smtp
- // String host = "smtp.gmail.com";// change accordingly
- // String mailStoreType = "imaps";
- // for pop3
- String host = "pop.gmail.com";
- String mailStoreType = "pop3s";
- String username = "<email_address>";// change accordingly
- String password = "<password>";// change accordingly
- String folder = "INBOX";
- readMessages(host, mailStoreType, username, password, folder);
- }
- private static void addPop3Props(Properties properties, String host, String port) {
- properties.setProperty("mail.pop3.host", host);
- properties.setProperty("mail.pop3.port", port);
- properties.setProperty("mail.pop3.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
- properties.setProperty("mail.pop3.socketFactory.port", port);
- properties.setProperty("mail.pop3.starttls.enable", "true");
- properties.setProperty("mail.pop3.socketFactory.fallback", "false");
- properties.setProperty("mail.pop3.rsetbeforequit", "true");
- }
- private static void addSmtpProps(Properties properties, String host, String port) {
- properties.setProperty("mail.smtp.host", host);
- properties.setProperty("mail.smtp.socketFactory.port", port);
- properties.setProperty("mail.smtp.port", port);
- properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
- properties.setProperty("mail.smtp.auth", "true");
- }
- public static void readMessages(String host, String storeType, String user, String password, String folder) {
- try {
- // create properties field
- Properties properties = new Properties();
- if (storeType.equals("pop3s")) {
- addPop3Props(properties, host, "995");
- } else if (storeType.equals("imaps")){
- addSmtpProps(properties, host, "465");
- } else {
- throw new Exception("unknown storeType: " + storeType);
- }
- URLName url = new URLName(storeType, host, 995, "", user, password);
- Session session = Session.getInstance(properties, null);
- Store store = new POP3SSLStore(session, url);
- store.connect();
- //Session emailSession = Session.getDefaultInstance(properties, null);
- //Store store = emailSession.getStore(storeType);
- store.connect(host, user, password);
- // create the folder object and open it
- Folder emailFolder = store.getFolder(folder);
- emailFolder.open(Folder.READ_ONLY);
- // retrieve the messages from the folder in an array and print it
- Message[] messages = emailFolder.getMessages();
- System.out.println("messages.length---" + messages.length);
- // do something with messages
- // close the store and folder objects
- emailFolder.close(false);
- store.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- javax.mail.MessagingException: Connect failed;
- nested exception is:
- java.net.ConnectException: Connection refused: connect
- at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:120)
- at javax.mail.Service.connect(Service.java:233)
- at javax.mail.Service.connect(Service.java:134)
- at javax.mail.Service.connect(Service.java:86)
- at com.smartstream.control.engine.custom.ReadEmailStep.readMessages(ReadEmailStep.java:71)
- at com.smartstream.control.engine.custom.ReadEmailStep.main(ReadEmailStep.java:32)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement