diff --git a/pom.xml b/pom.xml
index 58ae0b832..902a08fec 100644
--- a/pom.xml
+++ b/pom.xml
@@ -86,7 +86,7 @@
com.sun.mail
jakarta.mail
- 1.6.5
+ 2.0.0
org.slf4j
diff --git a/src/main/java/org/subethamail/smtp/internal/util/EmailUtils.java b/src/main/java/org/subethamail/smtp/internal/util/EmailUtils.java
index d837d1dea..b88be4f22 100644
--- a/src/main/java/org/subethamail/smtp/internal/util/EmailUtils.java
+++ b/src/main/java/org/subethamail/smtp/internal/util/EmailUtils.java
@@ -1,8 +1,9 @@
package org.subethamail.smtp.internal.util;
import com.github.davidmoten.guavamini.Preconditions;
-import javax.mail.internet.AddressException;
-import javax.mail.internet.InternetAddress;
+
+import jakarta.mail.internet.AddressException;
+import jakarta.mail.internet.InternetAddress;
/**
* @author Jeff Schnitzer
diff --git a/src/main/java/org/subethamail/wiser/Wiser.java b/src/main/java/org/subethamail/wiser/Wiser.java
index 8e5ce5c2f..66ad9b7ad 100644
--- a/src/main/java/org/subethamail/wiser/Wiser.java
+++ b/src/main/java/org/subethamail/wiser/Wiser.java
@@ -15,9 +15,6 @@
import java.util.Properties;
import java.util.concurrent.CopyOnWriteArrayList;
-import javax.mail.MessagingException;
-import javax.mail.Session;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.subethamail.smtp.TooMuchDataException;
@@ -25,6 +22,9 @@
import org.subethamail.smtp.server.SMTPServer;
import org.subethamail.smtp.server.SMTPServer.Builder;
+import jakarta.mail.MessagingException;
+import jakarta.mail.Session;
+
/**
* Wiser is a tool for unit testing applications that send mail. Your unit tests
* can start Wiser, run tests which generate emails, then examine the emails
diff --git a/src/main/java/org/subethamail/wiser/WiserMessage.java b/src/main/java/org/subethamail/wiser/WiserMessage.java
index 62f13585f..a1073bf25 100644
--- a/src/main/java/org/subethamail/wiser/WiserMessage.java
+++ b/src/main/java/org/subethamail/wiser/WiserMessage.java
@@ -3,12 +3,12 @@
import java.io.ByteArrayInputStream;
import java.io.PrintStream;
-import javax.mail.MessagingException;
-import javax.mail.Session;
-import javax.mail.internet.MimeMessage;
-
import org.subethamail.smtp.internal.Constants;
+import jakarta.mail.MessagingException;
+import jakarta.mail.Session;
+import jakarta.mail.internet.MimeMessage;
+
/**
* This class wraps a received message and provides a way to generate a JavaMail
* MimeMessage from the data.
diff --git a/src/test/java/org/subethamail/smtp/BigAttachmentTest.java b/src/test/java/org/subethamail/smtp/BigAttachmentTest.java
index 09d521a60..769be49ca 100644
--- a/src/test/java/org/subethamail/smtp/BigAttachmentTest.java
+++ b/src/test/java/org/subethamail/smtp/BigAttachmentTest.java
@@ -13,19 +13,6 @@
import java.security.NoSuchAlgorithmException;
import java.util.Properties;
-import javax.activation.DataHandler;
-import javax.activation.FileDataSource;
-import javax.mail.Address;
-import javax.mail.Message;
-import javax.mail.Multipart;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.URLName;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeBodyPart;
-import javax.mail.internet.MimeMessage;
-import javax.mail.internet.MimeMultipart;
-
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
@@ -36,6 +23,19 @@
import com.sun.mail.smtp.SMTPTransport;
+import jakarta.activation.DataHandler;
+import jakarta.activation.FileDataSource;
+import jakarta.mail.Address;
+import jakarta.mail.Message;
+import jakarta.mail.Multipart;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.URLName;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeBodyPart;
+import jakarta.mail.internet.MimeMessage;
+import jakarta.mail.internet.MimeMultipart;
+
/**
* This class tests the transfer speed of emails that carry
* attached files.
diff --git a/src/test/java/org/subethamail/smtp/ErrorResponseTest.java b/src/test/java/org/subethamail/smtp/ErrorResponseTest.java
index 9c046b9f4..08214a184 100644
--- a/src/test/java/org/subethamail/smtp/ErrorResponseTest.java
+++ b/src/test/java/org/subethamail/smtp/ErrorResponseTest.java
@@ -9,27 +9,27 @@
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicBoolean;
-import javax.activation.DataHandler;
-import javax.activation.DataSource;
-import javax.activation.FileDataSource;
-import javax.mail.BodyPart;
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import javax.mail.Multipart;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.internet.AddressException;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeBodyPart;
-import javax.mail.internet.MimeMessage;
-import javax.mail.internet.MimeMultipart;
-
import org.junit.Test;
import org.subethamail.smtp.helper.BasicMessageListener;
import org.subethamail.smtp.server.SMTPServer;
import com.sun.mail.smtp.SMTPSendFailedException;
+import jakarta.activation.DataHandler;
+import jakarta.activation.DataSource;
+import jakarta.activation.FileDataSource;
+import jakarta.mail.BodyPart;
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
+import jakarta.mail.Multipart;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.internet.AddressException;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeBodyPart;
+import jakarta.mail.internet.MimeMessage;
+import jakarta.mail.internet.MimeMultipart;
+
public class ErrorResponseTest {
static final String LOCALHOST = "127.0.0.1";
diff --git a/src/test/java/org/subethamail/smtp/MessageContentTest.java b/src/test/java/org/subethamail/smtp/MessageContentTest.java
index b13a9f8d1..66b102385 100644
--- a/src/test/java/org/subethamail/smtp/MessageContentTest.java
+++ b/src/test/java/org/subethamail/smtp/MessageContentTest.java
@@ -6,18 +6,18 @@
import java.util.Properties;
import java.util.Random;
-import javax.activation.DataHandler;
-import javax.mail.Message;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeMessage;
-import javax.mail.util.ByteArrayDataSource;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.subethamail.wiser.Wiser;
+import jakarta.activation.DataHandler;
+import jakarta.mail.Message;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeMessage;
+import jakarta.mail.util.ByteArrayDataSource;
+
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
diff --git a/src/test/java/org/subethamail/smtp/StartStopTest.java b/src/test/java/org/subethamail/smtp/StartStopTest.java
index 2e4b2cc96..0e6760818 100644
--- a/src/test/java/org/subethamail/smtp/StartStopTest.java
+++ b/src/test/java/org/subethamail/smtp/StartStopTest.java
@@ -2,16 +2,16 @@
import java.util.Properties;
-import javax.mail.Session;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.subethamail.wiser.Wiser;
+
+import jakarta.mail.Session;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.subethamail.wiser.Wiser;
-
/**
* This class attempts to quickly start/stop 10 Wiser servers. It makes sure that the socket bind address is correctly
* shut down.
diff --git a/src/test/java/org/subethamail/smtp/TestUtil.java b/src/test/java/org/subethamail/smtp/TestUtil.java
index 5e8d7ffe7..cf9a9d34e 100644
--- a/src/test/java/org/subethamail/smtp/TestUtil.java
+++ b/src/test/java/org/subethamail/smtp/TestUtil.java
@@ -11,19 +11,6 @@
import java.security.cert.CertificateException;
import java.util.Properties;
-import javax.activation.DataHandler;
-import javax.activation.DataSource;
-import javax.activation.FileDataSource;
-import javax.mail.BodyPart;
-import javax.mail.Message;
-import javax.mail.Multipart;
-import javax.mail.PasswordAuthentication;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeBodyPart;
-import javax.mail.internet.MimeMessage;
-import javax.mail.internet.MimeMultipart;
import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
@@ -33,6 +20,20 @@
import com.sun.mail.util.MailSSLSocketFactory;
+import jakarta.activation.DataHandler;
+import jakarta.activation.DataSource;
+import jakarta.activation.FileDataSource;
+import jakarta.mail.BodyPart;
+import jakarta.mail.Message;
+import jakarta.mail.Multipart;
+import jakarta.mail.PasswordAuthentication;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeBodyPart;
+import jakarta.mail.internet.MimeMessage;
+import jakarta.mail.internet.MimeMultipart;
+
class TestUtil {
private static final String PASSWORD = "password";
@@ -105,7 +106,7 @@ static void send(TrustManager[] trustManagers, ConnectionType connectionType, St
if (username == null) {
session = Session.getInstance(props);
} else {
- session = Session.getInstance(props, new javax.mail.Authenticator() {
+ session = Session.getInstance(props, new jakarta.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
diff --git a/src/test/java/org/subethamail/smtp/WiserFailuresTest.java b/src/test/java/org/subethamail/smtp/WiserFailuresTest.java
index 55d4a4a67..a5d4bb97c 100644
--- a/src/test/java/org/subethamail/smtp/WiserFailuresTest.java
+++ b/src/test/java/org/subethamail/smtp/WiserFailuresTest.java
@@ -9,20 +9,20 @@
import java.util.Iterator;
import java.util.Properties;
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeMessage;
-
-import junit.framework.TestCase;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.subethamail.wiser.Wiser;
import org.subethamail.wiser.WiserMessage;
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeMessage;
+
+import junit.framework.TestCase;
+
/**
* This class tests various aspects of the server for smtp compliance by using
* Wiser
@@ -216,7 +216,7 @@ public void testSendTwoMsgsWithLogin() throws MessagingException, IOException {
transport.sendMessage(msg,
InternetAddress.parse("dimiter.bakardjiev@musala.com", false));
assertEquals(2, this.server.getMessages().size());
- } catch (javax.mail.MessagingException me) {
+ } catch (jakarta.mail.MessagingException me) {
me.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
diff --git a/src/test/java/org/subethamail/smtp/server/BasicMessageHandlerFactoryTest.java b/src/test/java/org/subethamail/smtp/server/BasicMessageHandlerFactoryTest.java
index c40973c6c..27ec47595 100644
--- a/src/test/java/org/subethamail/smtp/server/BasicMessageHandlerFactoryTest.java
+++ b/src/test/java/org/subethamail/smtp/server/BasicMessageHandlerFactoryTest.java
@@ -12,19 +12,6 @@
import java.util.Properties;
import java.util.concurrent.atomic.AtomicReference;
-import javax.activation.DataHandler;
-import javax.activation.DataSource;
-import javax.activation.FileDataSource;
-import javax.mail.BodyPart;
-import javax.mail.Message;
-import javax.mail.Multipart;
-import javax.mail.Session;
-import javax.mail.Transport;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeBodyPart;
-import javax.mail.internet.MimeMessage;
-import javax.mail.internet.MimeMultipart;
-
import org.junit.Test;
import org.subethamail.smtp.MessageContext;
import org.subethamail.smtp.MessageHandler;
@@ -33,6 +20,19 @@
import org.subethamail.smtp.helper.BasicMessageHandlerFactory;
import org.subethamail.smtp.helper.BasicMessageListener;
+import jakarta.activation.DataHandler;
+import jakarta.activation.DataSource;
+import jakarta.activation.FileDataSource;
+import jakarta.mail.BodyPart;
+import jakarta.mail.Message;
+import jakarta.mail.Multipart;
+import jakarta.mail.Session;
+import jakarta.mail.Transport;
+import jakarta.mail.internet.InternetAddress;
+import jakarta.mail.internet.MimeBodyPart;
+import jakarta.mail.internet.MimeMessage;
+import jakarta.mail.internet.MimeMultipart;
+
public class BasicMessageHandlerFactoryTest {
private static final int PORT = 25000;
diff --git a/src/test/java/org/subethamail/smtp/server/MessageHandlerTest.java b/src/test/java/org/subethamail/smtp/server/MessageHandlerTest.java
index b652e28a4..d72b9e638 100644
--- a/src/test/java/org/subethamail/smtp/server/MessageHandlerTest.java
+++ b/src/test/java/org/subethamail/smtp/server/MessageHandlerTest.java
@@ -3,8 +3,6 @@
import java.io.IOException;
import java.io.InputStream;
-import javax.mail.MessagingException;
-
import org.junit.Assert;
import org.junit.Test;
import org.mockito.ArgumentMatchers;
@@ -18,6 +16,8 @@
import org.subethamail.smtp.client.SmartClient;
import org.subethamail.smtp.internal.util.TextUtils;
+import jakarta.mail.MessagingException;
+
/**
* This class tests whether the event handler methods defined in MessageHandler
* are called at the appropriate times and in good order.