TabularDataFileReader for the
* RData Binary Format.
diff --git a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/rdata/RTabFileParser.java b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/rdata/RTabFileParser.java
index d5ca06a96f3..f60b7733463 100644
--- a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/rdata/RTabFileParser.java
+++ b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/rdata/RTabFileParser.java
@@ -24,7 +24,7 @@
import java.util.logging.*;
import edu.harvard.iq.dataverse.util.BundleUtil;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import edu.harvard.iq.dataverse.DataTable;
import edu.harvard.iq.dataverse.datavariable.DataVariable;
diff --git a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/sav/SAVFileReader.java b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/sav/SAVFileReader.java
index 53441c0de65..682b8f1166c 100644
--- a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/sav/SAVFileReader.java
+++ b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/sav/SAVFileReader.java
@@ -19,17 +19,42 @@
*/
package edu.harvard.iq.dataverse.ingest.tabulardata.impl.plugins.sav;
-import java.io.*;
-import java.nio.*;
-import java.util.logging.*;
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.PrintWriter;
+import java.io.UnsupportedEncodingException;
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
+
+import java.text.DecimalFormat;
+import java.text.NumberFormat;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TimeZone;
+import java.util.logging.Logger;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
-import java.util.*;
-import java.util.regex.*;
-import java.text.*;
-
-import org.apache.commons.lang.*;
import org.apache.commons.codec.binary.Hex;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
import edu.harvard.iq.dataverse.DataTable;
import edu.harvard.iq.dataverse.datavariable.DataVariable;
@@ -40,8 +65,7 @@
import edu.harvard.iq.dataverse.ingest.tabulardata.TabularDataFileReader;
import edu.harvard.iq.dataverse.ingest.tabulardata.spi.TabularDataFileReaderSpi;
import edu.harvard.iq.dataverse.ingest.tabulardata.TabularDataIngest;
-import edu.harvard.iq.dataverse.ingest.tabulardata.InvalidData;
-
+import edu.harvard.iq.dataverse.ingest.tabulardata.InvalidData;
/**
diff --git a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/xlsx/XLSXFileReader.java b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/xlsx/XLSXFileReader.java
index 5a7642126fe..914e8d56432 100644
--- a/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/xlsx/XLSXFileReader.java
+++ b/src/main/java/edu/harvard/iq/dataverse/ingest/tabulardata/impl/plugins/xlsx/XLSXFileReader.java
@@ -33,7 +33,7 @@
import edu.harvard.iq.dataverse.ingest.tabulardata.TabularDataIngest;
import edu.harvard.iq.dataverse.util.BundleUtil;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.eventusermodel.XSSFReader;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;
diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/DataRetrieverAPI.java b/src/main/java/edu/harvard/iq/dataverse/mydata/DataRetrieverAPI.java
index 523d06bb8a1..ec3a1f357f8 100644
--- a/src/main/java/edu/harvard/iq/dataverse/mydata/DataRetrieverAPI.java
+++ b/src/main/java/edu/harvard/iq/dataverse/mydata/DataRetrieverAPI.java
@@ -39,7 +39,7 @@
import javax.ws.rs.QueryParam;
import edu.harvard.iq.dataverse.util.BundleUtil;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
*
diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java
index a1e94e01815..0e99220005c 100644
--- a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java
+++ b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java
@@ -20,7 +20,7 @@
import javax.json.Json;
import javax.json.JsonArrayBuilder;
import javax.json.JsonObjectBuilder;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
*
diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFinder.java b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFinder.java
index c9faf797d57..eaea5ab2296 100644
--- a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFinder.java
+++ b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFinder.java
@@ -21,7 +21,7 @@
import javax.json.Json;
import javax.json.JsonArrayBuilder;
import javax.json.JsonObjectBuilder;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
* Given a user and a set of filters (dvobject type, roles, publication status):
diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/RoleTagRetriever.java b/src/main/java/edu/harvard/iq/dataverse/mydata/RoleTagRetriever.java
index 9f03f8addb1..4556c92ff19 100644
--- a/src/main/java/edu/harvard/iq/dataverse/mydata/RoleTagRetriever.java
+++ b/src/main/java/edu/harvard/iq/dataverse/mydata/RoleTagRetriever.java
@@ -25,7 +25,7 @@
import java.util.logging.Logger;
import javax.json.Json;
import javax.json.JsonArrayBuilder;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
* Input: dvObject id, parent Id, and dvObject type (from Solr)
diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/SolrQueryFormatter.java b/src/main/java/edu/harvard/iq/dataverse/mydata/SolrQueryFormatter.java
index 9aefbee240c..1c3fca1537b 100644
--- a/src/main/java/edu/harvard/iq/dataverse/mydata/SolrQueryFormatter.java
+++ b/src/main/java/edu/harvard/iq/dataverse/mydata/SolrQueryFormatter.java
@@ -12,7 +12,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
* Convenience methods for formatting long arrays of ids into solrQuery strings
diff --git a/src/main/java/edu/harvard/iq/dataverse/passwordreset/PasswordResetPage.java b/src/main/java/edu/harvard/iq/dataverse/passwordreset/PasswordResetPage.java
index aea910c496e..e0ab786b68b 100644
--- a/src/main/java/edu/harvard/iq/dataverse/passwordreset/PasswordResetPage.java
+++ b/src/main/java/edu/harvard/iq/dataverse/passwordreset/PasswordResetPage.java
@@ -29,7 +29,7 @@
import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.component.UIInput;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.hibernate.validator.constraints.NotBlank;
@ViewScoped
diff --git a/src/main/java/edu/harvard/iq/dataverse/rserve/RJobRequest.java b/src/main/java/edu/harvard/iq/dataverse/rserve/RJobRequest.java
index d59e8f1050f..9171b8313ff 100644
--- a/src/main/java/edu/harvard/iq/dataverse/rserve/RJobRequest.java
+++ b/src/main/java/edu/harvard/iq/dataverse/rserve/RJobRequest.java
@@ -25,9 +25,15 @@
* @author Leonid Andreev
*/
import edu.harvard.iq.dataverse.datavariable.DataVariable;
-import java.util.*;
-import java.util.logging.*;
-import org.apache.commons.lang.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Logger;
+
+import org.apache.commons.lang3.StringUtils;
public class RJobRequest {
diff --git a/src/main/java/edu/harvard/iq/dataverse/rserve/RemoteDataFrameService.java b/src/main/java/edu/harvard/iq/dataverse/rserve/RemoteDataFrameService.java
index 503125eb45a..f13b6f11434 100644
--- a/src/main/java/edu/harvard/iq/dataverse/rserve/RemoteDataFrameService.java
+++ b/src/main/java/edu/harvard/iq/dataverse/rserve/RemoteDataFrameService.java
@@ -23,16 +23,31 @@
import edu.harvard.iq.dataverse.dataaccess.DataAccess;
import edu.harvard.iq.dataverse.dataaccess.StorageIO;
import edu.harvard.iq.dataverse.dataaccess.DataAccessRequest;
-import java.io.*;
-import java.util.*;
-import java.util.logging.*;
+
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.logging.Logger;
+
import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.rosuda.REngine.*;
import org.rosuda.REngine.Rserve.*;
-import org.apache.commons.lang.*;
-
/**
*
* @author Leonid Andreev
diff --git a/src/main/java/edu/harvard/iq/dataverse/rserve/VariableNameCheckerForR.java b/src/main/java/edu/harvard/iq/dataverse/rserve/VariableNameCheckerForR.java
index dea0c886cd1..65a64241364 100644
--- a/src/main/java/edu/harvard/iq/dataverse/rserve/VariableNameCheckerForR.java
+++ b/src/main/java/edu/harvard/iq/dataverse/rserve/VariableNameCheckerForR.java
@@ -20,10 +20,14 @@
package edu.harvard.iq.dataverse.rserve;
-import org.apache.commons.lang.*;
-import java.util.*;
-import java.util.regex.*;
+import org.apache.commons.lang3.StringUtils;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
/**
*
diff --git a/src/main/java/edu/harvard/iq/dataverse/search/AdvancedSearchPage.java b/src/main/java/edu/harvard/iq/dataverse/search/AdvancedSearchPage.java
index f3af7bf90c7..55516d68880 100644
--- a/src/main/java/edu/harvard/iq/dataverse/search/AdvancedSearchPage.java
+++ b/src/main/java/edu/harvard/iq/dataverse/search/AdvancedSearchPage.java
@@ -23,7 +23,7 @@
import javax.faces.view.ViewScoped;
import javax.inject.Inject;
import javax.inject.Named;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
@ViewScoped
@Named("AdvancedSearchPage")
diff --git a/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java b/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java
index f61f879eee7..bfc2af2fcc4 100644
--- a/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java
+++ b/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java
@@ -61,7 +61,7 @@
import javax.inject.Named;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrQuery.SortClause;
diff --git a/src/main/java/edu/harvard/iq/dataverse/search/SearchIncludeFragment.java b/src/main/java/edu/harvard/iq/dataverse/search/SearchIncludeFragment.java
index f7a3b874c24..09ab372c687 100644
--- a/src/main/java/edu/harvard/iq/dataverse/search/SearchIncludeFragment.java
+++ b/src/main/java/edu/harvard/iq/dataverse/search/SearchIncludeFragment.java
@@ -39,7 +39,7 @@
import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.http.HttpServletRequest;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
//@ViewScoped
@RequestScoped
diff --git a/src/main/java/edu/harvard/iq/dataverse/search/SearchUtil.java b/src/main/java/edu/harvard/iq/dataverse/search/SearchUtil.java
index a8e013f3ca3..c226d77f885 100644
--- a/src/main/java/edu/harvard/iq/dataverse/search/SearchUtil.java
+++ b/src/main/java/edu/harvard/iq/dataverse/search/SearchUtil.java
@@ -5,7 +5,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.solr.common.SolrInputDocument;
public class SearchUtil {
diff --git a/src/main/java/edu/harvard/iq/dataverse/util/FileSortFieldAndOrder.java b/src/main/java/edu/harvard/iq/dataverse/util/FileSortFieldAndOrder.java
index ba66c404349..ef921ff185c 100644
--- a/src/main/java/edu/harvard/iq/dataverse/util/FileSortFieldAndOrder.java
+++ b/src/main/java/edu/harvard/iq/dataverse/util/FileSortFieldAndOrder.java
@@ -1,7 +1,7 @@
package edu.harvard.iq.dataverse.util;
import edu.harvard.iq.dataverse.search.SortBy;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
public class FileSortFieldAndOrder {
diff --git a/src/main/java/edu/harvard/iq/dataverse/util/FileUtil.java b/src/main/java/edu/harvard/iq/dataverse/util/FileUtil.java
index cb7362e02a7..e7f77bc4fb5 100644
--- a/src/main/java/edu/harvard/iq/dataverse/util/FileUtil.java
+++ b/src/main/java/edu/harvard/iq/dataverse/util/FileUtil.java
@@ -100,7 +100,7 @@
import edu.harvard.iq.dataverse.datasetutility.FileSizeChecker;
import java.util.Arrays;
import org.apache.commons.io.IOUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
/**
* a 4.0 implementation of the DVN FileUtil;
diff --git a/src/main/java/edu/harvard/iq/dataverse/util/MarkupChecker.java b/src/main/java/edu/harvard/iq/dataverse/util/MarkupChecker.java
index 7b096786351..3131afbf010 100644
--- a/src/main/java/edu/harvard/iq/dataverse/util/MarkupChecker.java
+++ b/src/main/java/edu/harvard/iq/dataverse/util/MarkupChecker.java
@@ -5,7 +5,7 @@
*/
package edu.harvard.iq.dataverse.util;
-import org.apache.commons.lang.StringEscapeUtils;
+import org.apache.commons.text.StringEscapeUtils;
import org.jsoup.Jsoup;
import org.jsoup.safety.Whitelist;
import org.jsoup.parser.Parser;
@@ -60,7 +60,7 @@ public static String stripAllTags(String unsafe) {
}
public static String escapeHtml(String unsafe) {
- return StringEscapeUtils.escapeHtml(unsafe);
+ return StringEscapeUtils.escapeHtml4(unsafe);
}
}
diff --git a/src/main/java/edu/harvard/iq/dataverse/util/SumStatCalculator.java b/src/main/java/edu/harvard/iq/dataverse/util/SumStatCalculator.java
index ee37bd51206..545f2937f70 100644
--- a/src/main/java/edu/harvard/iq/dataverse/util/SumStatCalculator.java
+++ b/src/main/java/edu/harvard/iq/dataverse/util/SumStatCalculator.java
@@ -19,13 +19,13 @@
*/
package edu.harvard.iq.dataverse.util;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
import java.util.logging.Logger;
-import org.apache.commons.lang.*;
-import org.apache.commons.math.stat.*;
-//import cern.colt.list.*;
-//import cern.jet.stat.Descriptive;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.math.stat.StatUtils;
/**
diff --git a/src/main/java/edu/harvard/iq/dataverse/validation/PasswordValidatorUtil.java b/src/main/java/edu/harvard/iq/dataverse/validation/PasswordValidatorUtil.java
index 6d78ab44a5f..9a4f1610e62 100644
--- a/src/main/java/edu/harvard/iq/dataverse/validation/PasswordValidatorUtil.java
+++ b/src/main/java/edu/harvard/iq/dataverse/validation/PasswordValidatorUtil.java
@@ -5,7 +5,7 @@
import java.util.Arrays;
import java.util.List;
import java.util.logging.Logger;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.passay.CharacterRule;
import org.passay.EnglishCharacterData;
diff --git a/src/main/java/edu/harvard/iq/dataverse/workflows/WorkflowUtil.java b/src/main/java/edu/harvard/iq/dataverse/workflows/WorkflowUtil.java
index aeb8bcf6c87..e6e6bfd23c8 100644
--- a/src/main/java/edu/harvard/iq/dataverse/workflows/WorkflowUtil.java
+++ b/src/main/java/edu/harvard/iq/dataverse/workflows/WorkflowUtil.java
@@ -19,7 +19,7 @@
import edu.harvard.iq.dataverse.workflow.step.WorkflowStepResult;
import static edu.harvard.iq.dataverse.util.json.NullSafeJsonBuilder.jsonObjectBuilder;
-import static org.apache.commons.lang3.StringEscapeUtils.escapeHtml4;
+import static org.apache.commons.text.StringEscapeUtils.escapeHtml4;
public class WorkflowUtil {
diff --git a/src/main/webapp/dataset-license-terms.xhtml b/src/main/webapp/dataset-license-terms.xhtml
index 924f07c14a0..c5bdc8638cf 100644
--- a/src/main/webapp/dataset-license-terms.xhtml
+++ b/src/main/webapp/dataset-license-terms.xhtml
@@ -24,7 +24,7 @@