diff --git a/.github/workflows/maven_unit_test.yml b/.github/workflows/maven_unit_test.yml
index 464d60c2db6..70363112050 100644
--- a/.github/workflows/maven_unit_test.yml
+++ b/.github/workflows/maven_unit_test.yml
@@ -10,16 +10,19 @@ on:
jobs:
unittest:
- name: (JDK ${{ matrix.jdk }} / ${{ matrix.os }}) Unit Tests
+ name: (${{ matrix.status}} / JDK ${{ matrix.jdk }}) Unit Tests
strategy:
fail-fast: false
matrix:
- os: [ ubuntu-latest ]
jdk: [ '11' ]
- #include:
- # - os: ubuntu-latest
- # jdk: '16'
- runs-on: ${{ matrix.os }}
+ experimental: [false]
+ status: ["Stable"]
+ include:
+ - jdk: '17'
+ experimental: true
+ status: "Experimental"
+ continue-on-error: ${{ matrix.experimental }}
+ runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.jdk }}
@@ -34,7 +37,7 @@ jobs:
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build with Maven
- run: mvn -DcompilerArgument=-Xlint:unchecked -P all-unit-tests clean test
+ run: mvn -DcompilerArgument=-Xlint:unchecked -Dtarget.java.version=${{ matrix.jdk }} -P all-unit-tests clean test
- name: Maven Code Coverage
env:
CI_NAME: github
diff --git a/pom.xml b/pom.xml
index e9ce029484d..d4b4fb7f2d6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,6 +25,7 @@
-Duser.timezone=${project.timezone} -Dfile.encoding=${project.build.sourceEncoding} -Duser.language=${project.language} -Duser.region=${project.region}
false
+ 11
8.0.0
5.2021.5
42.2.19
@@ -45,7 +46,7 @@
2.28.2
5.2.4
1.20.1
- 0.8.6
+ 0.8.7
@@ -824,6 +825,16 @@
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.8.1
+
+ ${target.java.version}
+
+ ${compilerArgument}
+
+
org.apache.maven.plugins
maven-jar-plugin
@@ -905,7 +916,7 @@
maven-surefire-plugin
- 2.22.2
+ 3.0.0-M5
${testsToExclude}
@@ -947,26 +958,6 @@
all-unit-tests
-
- Java9Plus
-
- [1.9
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.8.0
-
- 11
-
- ${compilerArgument}
-
-
-
-
-
tc
diff --git a/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java b/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java
index 5651545e505..8fe13bc4044 100644
--- a/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java
+++ b/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java
@@ -1,29 +1,37 @@
package edu.harvard.iq.dataverse.harvest.server.xoai;
import com.lyncode.xml.exceptions.XmlWriteException;
-import com.lyncode.xoai.dataprovider.handlers.*;
-import com.lyncode.xoai.dataprovider.exceptions.*;
+import com.lyncode.xoai.dataprovider.exceptions.BadArgumentException;
+import com.lyncode.xoai.dataprovider.exceptions.CannotDisseminateFormatException;
+import com.lyncode.xoai.dataprovider.exceptions.CannotDisseminateRecordException;
+import com.lyncode.xoai.dataprovider.exceptions.DoesNotSupportSetsException;
+import com.lyncode.xoai.dataprovider.exceptions.HandlerException;
+import com.lyncode.xoai.dataprovider.exceptions.NoMatchesException;
+import com.lyncode.xoai.dataprovider.exceptions.NoMetadataFormatsException;
+import com.lyncode.xoai.dataprovider.exceptions.OAIException;
+import com.lyncode.xoai.dataprovider.handlers.VerbHandler;
import com.lyncode.xoai.dataprovider.handlers.results.ListItemsResults;
import com.lyncode.xoai.dataprovider.handlers.helpers.ItemHelper;
import com.lyncode.xoai.dataprovider.handlers.helpers.ItemRepositoryHelper;
-import com.lyncode.xoai.dataprovider.handlers.helpers.ResumptionTokenHelper;
import com.lyncode.xoai.dataprovider.handlers.helpers.SetRepositoryHelper;
import com.lyncode.xoai.dataprovider.model.Context;
import com.lyncode.xoai.dataprovider.model.Item;
import com.lyncode.xoai.dataprovider.model.MetadataFormat;
import com.lyncode.xoai.dataprovider.model.Set;
-import com.lyncode.xoai.model.oaipmh.*;
import com.lyncode.xoai.dataprovider.parameters.OAICompiledRequest;
import com.lyncode.xoai.dataprovider.repository.Repository;
+import com.lyncode.xoai.model.oaipmh.Header;
+import com.lyncode.xoai.model.oaipmh.ListRecords;
+import com.lyncode.xoai.model.oaipmh.Metadata;
+import com.lyncode.xoai.model.oaipmh.Record;
+import com.lyncode.xoai.model.oaipmh.ResumptionToken;
import com.lyncode.xoai.xml.XSLPipeline;
import com.lyncode.xoai.xml.XmlWriter;
import edu.harvard.iq.dataverse.Dataset;
import javax.xml.stream.XMLStreamException;
-import javax.xml.transform.TransformerException;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
-import java.io.IOException;
import java.util.List;
/**