diff --git a/network/pom.xml b/network/pom.xml
index 58796c9..a9d52e2 100644
--- a/network/pom.xml
+++ b/network/pom.xml
@@ -1,69 +1,76 @@
-
-
- 4.0.0
-
- de.muehlencord.shared
- shared-network
- 1.1-SNAPSHOT
- jar
- shared-network
-
-
- shared
- de.muehlencord
- 1.1-SNAPSHOT
-
-
- http://maven.apache.org
-
- UTF-8
-
-
-
- ${project.artifactId}
-
-
-
-
- junit
- junit
- jar
- test
-
-
- com.enterprisedt
- edtFTPj
- compile
-
-
- org.slf4j
- slf4j-api
-
-
- org.slf4j
- slf4j-log4j12
- test
-
-
- de.muehlencord.shared
- shared-util
- jar
- 1.1-SNAPSHOT
-
-
-
- com.sun.mail
- javax.mail
-
-
- com.microsoft.ews-java-api
- ews-java-api
-
-
-
- commons-net
- commons-net
- compile
-
-
-
+
+
+ 4.0.0
+
+ de.muehlencord.shared
+ shared-network
+ 1.1-SNAPSHOT
+ jar
+ shared-network
+
+
+ shared
+ de.muehlencord
+ 1.1-SNAPSHOT
+
+
+ http://maven.apache.org
+
+ UTF-8
+
+
+
+ ${project.artifactId}
+
+
+
+
+ junit
+ junit
+ jar
+ test
+
+
+ com.enterprisedt
+ edtFTPj
+ compile
+
+
+ org.slf4j
+ slf4j-api
+
+
+ org.slf4j
+ slf4j-log4j12
+ test
+
+
+ de.muehlencord.shared
+ shared-util
+ jar
+ 1.1-SNAPSHOT
+
+
+
+ com.sun.mail
+ javax.mail
+
+
+ com.microsoft.ews-java-api
+ ews-java-api
+
+
+
+ commons-net
+ commons-net
+ compile
+
+
+
+ javax.xml.ws
+ jaxws-api
+ 2.3.1
+ test
+
+
+
diff --git a/network/src/main/java/de/muehlencord/shared/network/mail/MailReader.java b/network/src/main/java/de/muehlencord/shared/network/mail/MailReader.java
index ca7a38d..8073d53 100644
--- a/network/src/main/java/de/muehlencord/shared/network/mail/MailReader.java
+++ b/network/src/main/java/de/muehlencord/shared/network/mail/MailReader.java
@@ -5,7 +5,6 @@
package de.muehlencord.shared.network.mail;
import java.util.List;
-import javax.mail.Folder;
/**
*
diff --git a/network/src/main/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReader.java b/network/src/main/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReader.java
index 6681bcb..1b65cab 100644
--- a/network/src/main/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReader.java
+++ b/network/src/main/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReader.java
@@ -5,6 +5,7 @@ import de.muehlencord.shared.network.mail.MailReader;
import de.muehlencord.shared.network.mail.MailReaderConfiguration;
import de.muehlencord.shared.network.mail.MailReaderConnectionException;
import de.muehlencord.shared.network.mail.MailReaderException;
+import java.net.URI;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -34,7 +35,7 @@ import org.slf4j.LoggerFactory;
* @author Joern Muehlencord
*/
public class ExchangeMailReader implements MailReader {
-
+
private static final Logger LOGGER = LoggerFactory.getLogger(ExchangeMailReader.class);
private final MailReaderConfiguration configuration;
private ExchangeService service = null;
@@ -55,8 +56,11 @@ public class ExchangeMailReader implements MailReader {
ExchangeCredentials credentials = new WebCredentials(userName, password);
service.setCredentials(credentials);
- service.autodiscoverUrl(emailAddress, new RedirectionUrlCallback());
-
+ if (hostName == null) {
+ service.autodiscoverUrl(emailAddress, new RedirectionUrlCallback());
+ } else {
+ service.setUrl(new URI(hostName));
+ }
LOGGER.info("Connected to " + getConnectionShortCut());
} catch (Exception ex) {
throw new MailReaderConnectionException(ex.getMessage(), ex);
@@ -241,9 +245,15 @@ public class ExchangeMailReader implements MailReader {
}
class RedirectionUrlCallback implements IAutodiscoverRedirectionUrl {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(RedirectionUrlCallback.class);
@Override
public boolean autodiscoverRedirectionUrlValidationCallback(String redirectionUrl) {
+ if (LOGGER.isDebugEnabled()) {
+ LOGGER.debug("redirectUrl found: {}", redirectionUrl);
+ }
+
return redirectionUrl.toLowerCase().startsWith("https://");
}
}
diff --git a/network/src/test/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReaderTest.java b/network/src/test/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReaderTest.java
index 0066953..85510dd 100644
--- a/network/src/test/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReaderTest.java
+++ b/network/src/test/java/de/muehlencord/shared/network/mail/exchange/ExchangeMailReaderTest.java
@@ -24,7 +24,7 @@ public class ExchangeMailReaderTest {
public void testConnect() {
try {
LOGGER.info("testConnect");
- String imapHost = null;
+ String imapHost = null; // use autodiscover
String smtpHost = null;
String folder = null;
String testFolder = null;
@@ -32,16 +32,15 @@ public class ExchangeMailReaderTest {
String password = null;
String emailaddress = null;
- assumeNotNull(imapHost);
+ // disable tests if not all values are set
assumeNotNull(smtpHost);
assumeNotNull(folder);
assumeNotNull(testFolder);
assumeNotNull(userName);
assumeNotNull(emailaddress);
assumeNotNull(password);
-
- MailReaderConfiguration config = new MailReaderConfiguration(smtpHost, imapHost, userName, password, emailaddress);
+ MailReaderConfiguration config = new MailReaderConfiguration(smtpHost, imapHost, userName, password, emailaddress);
MailReader instance = new ExchangeMailReader(config);
instance.connect();