# JavaMail: "No provider for imaps"



## Templarthelast (17. Apr 2012)

Bei einem Programm versuche ich eine Verbindung zum imap Server von Google herzustellen, zwar stimmen ServerURL und Port, allerdings scheitert es an 
	
	
	
	





```
javax.mail.NoSuchProviderException: No provider for imaps
```
. 

EmailManager.java

```
package com.eichler.emailAFK;

import java.security.Security;
import java.util.Date;
import java.util.Properties;

import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;

import com.sun.mail.imap.IMAPStore;




public class EmailManager {

	public static void getMail(Date startDate, User user) throws Exception { //ruft alle Emails bis zum Angegebenen Datum ab
		final Properties props = new Properties();
		System.out.println(user.getImap());
		props.setProperty("mail.imap.host", user.getImap());
		props.setProperty("mail.imap.user", user.getEmailAcc());
		props.setProperty("mail.imap.password", user.getPwAcc());
		props.setProperty("mail.imap.port", user.getImapPort());
		props.setProperty( "mail.store.protocol", "imaps" );
		props.setProperty("mail.imap.auth", "true");
		props.setProperty("mail.imap.socketFactory.class",
				"javax.net.ssl.SSLSocketFactory");
        Security.setProperty("ssl.SocketFactory.provider",
                "DummySSLSocketFactory");

		Session session = Session.getDefaultInstance(props,
				new  javax.mail.Authenticator() {
					@Override
					protected PasswordAuthentication getPasswordAuthentication() {
						return new PasswordAuthentication(props
								.getProperty("mail.imap.user"), props
								.getProperty("mail.imap.password"));
					}
		});
		session.setDebug(true);

		IMAPStore store = (IMAPStore) session.getStore("imaps");
		store.connect();
		Folder folder = store.getFolder("INBOX");
		folder.open(Folder.READ_ONLY);

		Message message[] = folder.getMessages();

		for (int i = message.length - 1; i >= 0; i--) {
			System.out.println();
			if (message[i].getSentDate().before(startDate)) {
				System.err.println("limit reached");
				break;
			}
		}

		folder.close(false);
		store.close();
	}
}
```


----------



## AlexSpritze (17. Apr 2012)

Was passiert, wenn du Zeile 26 weglässt?


----------



## Templarthelast (17. Apr 2012)

Ich hab das ganze gelöst durch die gmail javamail version. Aber Zeile 26 hatte ich erst zur Lösung des Problems eingefügt.


----------

