2 Commits

Author SHA1 Message Date
204456ce3c migrate to jakarta.mail 2025-09-07 13:39:16 +02:00
067d376948 migrate to jakarta.mail 2024-02-14 01:03:41 +01:00
8 changed files with 230 additions and 213 deletions

View File

@ -1,3 +1,4 @@
<!-- <!--
Copyright 2019 Joern Muehlencord (joern@muehlencord.de). Copyright 2019 Joern Muehlencord (joern@muehlencord.de).
@ -13,8 +14,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
--> -->
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>de.muehlencord.shared</groupId> <groupId>de.muehlencord.shared</groupId>
@ -36,7 +36,7 @@ limitations under the License.
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.junit.jupiter</groupId> <groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId> <artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>

View File

@ -15,8 +15,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
--> -->
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>de.muehlencord.shared</groupId> <groupId>de.muehlencord.shared</groupId>
@ -61,7 +60,7 @@ limitations under the License.
<!-- Testing --> <!-- Testing -->
<dependency> <dependency>
<groupId>org.junit.jupiter</groupId> <groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId> <artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>

View File

@ -27,13 +27,14 @@ limitations under the License.
<groupId>de.muehlencord</groupId> <groupId>de.muehlencord</groupId>
<version>2.0.1-SNAPSHOT</version> <version>2.0.1-SNAPSHOT</version>
</parent> </parent>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> </properties>
<url>http://maven.apache.org</url> <url>http://maven.apache.org</url>
<version>2.0.1-SNAPSHOT</version>
<dependencies> <dependencies>
<dependency> <dependency>
@ -62,10 +63,16 @@ limitations under the License.
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<artifactId>jaxws-api</artifactId>
<groupId>javax.xml.ws</groupId>
<scope>test</scope>
</dependency>
<!-- Test --> <!-- Test -->
<dependency> <dependency>
<artifactId>junit-jupiter-engine</artifactId>
<groupId>org.junit.jupiter</groupId> <groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>
@ -75,4 +82,7 @@ limitations under the License.
</dependency> </dependency>
</dependencies> </dependencies>
<build>
<finalName>${project.artifactId}</finalName>
</build>
</project> </project>

View File

@ -22,16 +22,17 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;k import org.junit.jupiter.api.Test;
/** /**
*
* @author Joern Muehlencord (joern@muehlencord.de) * @author Joern Muehlencord (joern@muehlencord.de)
*/ */
class HttpLayerTest extends BaseTest { public class HttpLayerTest extends BaseTest {
@Test @Test
@Disabled @Disabled
void testPostByMap() throws Exception { public void testPostByMap() throws Exception {
System.out.println("testPostByMap"); System.out.println("testPostByMap");
Map<String, String[]> map = new HashMap<>(); Map<String, String[]> map = new HashMap<>();
String[] value = {"Hello World!", "Hello World again"}; String[] value = {"Hello World!", "Hello World again"};
@ -43,7 +44,7 @@ class HttpLayerTest extends BaseTest {
@Test @Test
@Disabled @Disabled
void testPostByMapList() throws Exception { public void testPostByMapList() throws Exception {
System.out.println("testPostByMapList"); System.out.println("testPostByMapList");
List<Map<String, String[]>> list = new LinkedList<>(); List<Map<String, String[]>> list = new LinkedList<>();
Map<String, String[]> map = new HashMap<>(); Map<String, String[]> map = new HashMap<>();
@ -61,14 +62,14 @@ class HttpLayerTest extends BaseTest {
@Test @Test
@Disabled @Disabled
void testByValue() throws Exception { public void testByValue() throws Exception {
System.out.println("testByValue"); System.out.println("testByValue");
HttpLayer httpLayer = new HttpLayer("http://localhost:8080/HttpPostListener/HttpPostListener"); HttpLayer httpLayer = new HttpLayer("http://localhost:8080/HttpPostListener/HttpPostListener");
httpLayer.post("message", "Hello World by single parameter"); httpLayer.post("message", "Hello World by single parameter");
} }
@Test @Test
void testWithUnknownURL() throws MessageNotSendException { public void testWithUnknownURL() throws MessageNotSendException {
System.out.println("testWithUnknownURL"); System.out.println("testWithUnknownURL");
HttpLayer httpLayer = new HttpLayer("http://localhost/thisURLDoesNotExist"); HttpLayer httpLayer = new HttpLayer("http://localhost/thisURLDoesNotExist");
Assertions.assertThrows(MessageNotSendException.class, () -> { Assertions.assertThrows(MessageNotSendException.class, () -> {
@ -78,7 +79,7 @@ class HttpLayerTest extends BaseTest {
} }
@Test @Test
void testInvalidURL() throws MessageNotSendException { public void testInvalidURL() throws MessageNotSendException {
System.out.println("testInvalidURL"); System.out.println("testInvalidURL");
HttpLayer httpLayer = new HttpLayer("joern@muehlencord.de"); HttpLayer httpLayer = new HttpLayer("joern@muehlencord.de");
Assertions.assertThrows(MessageNotSendException.class, () -> { Assertions.assertThrows(MessageNotSendException.class, () -> {
@ -87,7 +88,7 @@ class HttpLayerTest extends BaseTest {
} }
@Test @Test
void testUnsupportedURL() throws MessageNotSendException { public void testUnsupportedURL() throws MessageNotSendException {
System.out.println("testUnsupportedURL"); System.out.println("testUnsupportedURL");
HttpLayer httpLayer = new HttpLayer("ftp://localhost"); HttpLayer httpLayer = new HttpLayer("ftp://localhost");
Assertions.assertThrows(MessageNotSendException.class, () -> { Assertions.assertThrows(MessageNotSendException.class, () -> {

104
pom.xml
View File

@ -87,40 +87,36 @@ limitations under the License.
<maven.compiler.release>17</maven.compiler.release> <maven.compiler.release>17</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<slf4j.version>2.0.12</slf4j.version> <slf4j.version>2.0.9</slf4j.version>
<jackson.version>2.16.1</jackson.version> <jackson.version>2.18.1</jackson.version>
<lombok.version>1.18.30</lombok.version> <lombok.version>1.18.34</lombok.version>
<junit.version>5.10.2</junit.version> <junit.version>5.11.3</junit.version>
<poi.version>5.2.5</poi.version> <poi.version>5.3.0</poi.version>
<commons-net.version>3.10.0</commons-net.version> <commons-net.version>3.11.1</commons-net.version>
<commons-lang.version>3.14.0</commons-lang.version> <commons-lang.version>3.17.0</commons-lang.version>
<gson.version>2.10.1</gson.version> <gson.version>2.11.0</gson.version>
<fusionauth.version>5.3.1</fusionauth.version> <fusionauth.version>5.3.3</fusionauth.version>
<bouncycastle.version>1.70</bouncycastle.version> <bouncycastle.version>1.70</bouncycastle.version>
<hibernate.version>6.1.7.Final</hibernate.version> <hibernate.version>7.0.0.Beta1</hibernate.version>
<jakarta.mail-api.version>2.1.2</jakarta.mail-api.version> <jakarta.mail.version>2.1.3</jakarta.mail.version>
<ews-java-api.version>2.0</ews-java-api.version>
<scrypt.version>1.4.0</scrypt.version>
<jakarta-faces.version>4.0.5</jakarta-faces.version> <jakarta-faces.version>4.1.1</jakarta-faces.version>
<joinfaces.version>5.1.8</joinfaces.version> <joinfaces.version>5.3.5</joinfaces.version>
<jakarta.interceptor-api.version>2.1.0</jakarta.interceptor-api.version> <jakarta.interceptor-api.version>2.2.0</jakarta.interceptor-api.version>
<jakarta-inject-api.version>2.0.1</jakarta-inject-api.version> <jakarta-inject-api.version>2.0.1</jakarta-inject-api.version>
<jaxws-api.version>2.3.1</jaxws-api.version>
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<maven-release-plugin.version>2.5.3</maven-release-plugin.version>
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
<maven-dependency-plugin.version>3.6.1</maven-dependency-plugin.version>
<nexus-staging-maven-plugin.version>1.6.8</nexus-staging-maven-plugin.version>
<license-maven-plugin.version>1.14</license-maven-plugin.version>
</properties> </properties>
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<dependency>
<groupId>org.joinfaces</groupId>
<artifactId>joinfaces-bom</artifactId>
<version>${joinfaces.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency> <dependency>
<groupId>org.joinfaces</groupId> <groupId>org.joinfaces</groupId>
<artifactId>joinfaces-dependencies</artifactId> <artifactId>joinfaces-dependencies</artifactId>
@ -178,13 +174,12 @@ limitations under the License.
<dependency> <dependency>
<groupId>jakarta.mail</groupId> <groupId>jakarta.mail</groupId>
<artifactId>jakarta.mail-api</artifactId> <artifactId>jakarta.mail-api</artifactId>
<version>${jakarta.mail-api.version}</version> <version>${jakarta.mail.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<artifactId>ews-java-api</artifactId> <artifactId>ews-java-api</artifactId>
<groupId>com.microsoft.ews-java-api</groupId> <groupId>com.microsoft.ews-java-api</groupId>
<version>${ews-java-api.version}</version> <version>2.0</version>
</dependency> </dependency>
<!-- Faces --> <!-- Faces -->
@ -227,11 +222,16 @@ limitations under the License.
<groupId>com.fasterxml.jackson.datatype</groupId> <groupId>com.fasterxml.jackson.datatype</groupId>
<version>${jackson.version}</version> <version>${jackson.version}</version>
</dependency> </dependency>
<dependency>
<artifactId>jaxws-api</artifactId>
<groupId>javax.xml.ws</groupId>
<version>${jaxws-api.version}</version>
</dependency>
<dependency> <dependency>
<artifactId>scrypt</artifactId> <artifactId>scrypt</artifactId>
<groupId>com.lambdaworks</groupId> <groupId>com.lambdaworks</groupId>
<version>${scrypt.version}</version> <version>1.4.0</version>
</dependency> </dependency>
<dependency> <dependency>
<artifactId>bcprov-jdk15on</artifactId> <artifactId>bcprov-jdk15on</artifactId>
@ -279,17 +279,17 @@ limitations under the License.
<build> <build>
<plugins> <plugins>
<!-- deploy artifacts to maven repository --> <!-- deploy artifacts to maven repository -->
<plugin> <!-- <plugin>-->
<artifactId>nexus-staging-maven-plugin</artifactId> <!-- <artifactId>nexus-staging-maven-plugin</artifactId>-->
<configuration> <!-- <configuration>-->
<autoReleaseAfterClose>true</autoReleaseAfterClose> <!-- <autoReleaseAfterClose>true</autoReleaseAfterClose>-->
<nexusUrl>https://oss.sonatype.org/</nexusUrl> <!-- <nexusUrl>https://oss.sonatype.org/</nexusUrl>-->
<serverId>ossrh</serverId> <!-- <serverId>ossrh</serverId>-->
</configuration> <!-- </configuration>-->
<extensions>true</extensions> <!-- <extensions>true</extensions>-->
<groupId>org.sonatype.plugins</groupId> <!-- <groupId>org.sonatype.plugins</groupId>-->
<version>${nexus-staging-maven-plugin.version}</version> <!-- <version>1.6.8</version>-->
</plugin> <!-- </plugin>-->
<!-- ensure sources are build so they are also uploaded --> <!-- ensure sources are build so they are also uploaded -->
<plugin> <plugin>
@ -318,7 +318,7 @@ limitations under the License.
</execution> </execution>
</executions> </executions>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<version>${maven-javadoc-plugin.version}</version> <version>3.1.1</version>
</plugin> </plugin>
<!-- create license file --> <!-- create license file -->
@ -342,7 +342,7 @@ limitations under the License.
</execution> </execution>
</executions> </executions>
<groupId>org.codehaus.mojo</groupId> <groupId>org.codehaus.mojo</groupId>
<version>${license-maven-plugin.version}</version> <version>1.14</version>
</plugin> </plugin>
<!-- sign jar archives --> <!-- sign jar archives -->
@ -361,7 +361,7 @@ limitations under the License.
</execution> </execution>
</executions> </executions>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<version>${maven-gpg-plugin.version}</version> <version>1.6</version>
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
@ -381,20 +381,27 @@ limitations under the License.
<target>${maven.compiler.target}</target> <target>${maven.compiler.target}</target>
</configuration> </configuration>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<version>${maven-compiler-plugin.version}</version> <version>3.8.1</version>
</plugin>
<!-- build maven ejb artifacts -->
<plugin>
<artifactId>maven-ejb-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>3.0.1</version>
</plugin> </plugin>
<!-- create new releases --> <!-- create new releases -->
<plugin> <plugin>
<artifactId>maven-release-plugin</artifactId> <artifactId>maven-release-plugin</artifactId>
<version>${maven-release-plugin.version}</version> <version>2.5.3</version>
</plugin> </plugin>
<!-- control junit tests from maven build --> <!-- control junit tests from maven build -->
<plugin> <plugin>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<version>${maven-surefire-plugin.version}</version> <version>2.22.2</version>
</plugin> </plugin>
</plugins> </plugins>
</pluginManagement> </pluginManagement>
@ -411,6 +418,7 @@ limitations under the License.
<configuration> <configuration>
<tagNameFormat>v@{project.version}</tagNameFormat> <tagNameFormat>v@{project.version}</tagNameFormat>
</configuration> </configuration>
<version>2.5.3</version>
</plugin> </plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
@ -420,7 +428,7 @@ limitations under the License.
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId> <artifactId>maven-dependency-plugin</artifactId>
<version>${maven-dependency-plugin.version}</version> <version>3.6.1</version>
</plugin> </plugin>
</plugins> </plugins>
</build> </build>

View File

@ -1,3 +1,4 @@
<!-- <!--
Copyright 2019 Joern Muehlencord (joern@muehlencord.de). Copyright 2019 Joern Muehlencord (joern@muehlencord.de).
@ -13,8 +14,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
--> -->
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>de.muehlencord.shared</groupId> <groupId>de.muehlencord.shared</groupId>
@ -38,7 +38,7 @@ limitations under the License.
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.junit.jupiter</groupId> <groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId> <artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -15,19 +15,18 @@
*/ */
package de.muehlencord.shared.util; package de.muehlencord.shared.util;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import java.security.SecureRandom; import java.security.SecureRandom;
import org.bouncycastle.util.encoders.Base64; import org.bouncycastle.util.encoders.Base64;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
/** /**
*
* @author Joern Muehlencord (joern@muehlencord.de) * @author Joern Muehlencord (joern@muehlencord.de)
*/ */
class PasswordUtilTest { public class PasswordUtilTest {
private static SecureRandom secureRandom; private static SecureRandom secureRandom;
private static String systemSalt64Coded; private static String systemSalt64Coded;
@ -44,13 +43,13 @@ class PasswordUtilTest {
@Test @Test
void testGetHash() { public void testGetHash() {
PasswordUtil pwUtil = new PasswordUtil(systemSalt64Coded); PasswordUtil pwUtil = new PasswordUtil(systemSalt64Coded);
String password1 = pwUtil.getHash("password"); String password1 = pwUtil.getHash("password");
String password2 = pwUtil.getHash("password"); String password2 = pwUtil.getHash("password");
assertNotEquals(password1, password2); assertFalse (password1.equals(password2));
assertTrue (pwUtil.matches ("password", password1)); assertTrue (pwUtil.matches ("password", password1));
assertFalse (pwUtil.matches ("wrongpassword", password1)); assertFalse (pwUtil.matches ("wrongpassword", password1));