searchPatientInClientRegistry(String lastName
if (transformedPatientSearchResult.getNationalId() == null
|| transformedPatientSearchResult.getNationalId().isEmpty()) {
String nationalId = generateDynamicID(transformedPatientSearchResult);
- log.info("dynamic national id: {}", nationalId);
+ LogEvent.logInfo(this.getClass().getSimpleName(), "searchPatientInClientRegistry", "dynamic national id: " + nationalId);
transformedPatientSearchResult.setNationalId(nationalId);
}
diff --git a/src/main/java/org/openelisglobal/common/rest/provider/SampleEntryTestsForTypeProviderRestController.java b/src/main/java/org/openelisglobal/common/rest/provider/SampleEntryTestsForTypeProviderRestController.java
index 49603df506..d8e502ae86 100755
--- a/src/main/java/org/openelisglobal/common/rest/provider/SampleEntryTestsForTypeProviderRestController.java
+++ b/src/main/java/org/openelisglobal/common/rest/provider/SampleEntryTestsForTypeProviderRestController.java
@@ -7,9 +7,9 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.constants.Constants;
diff --git a/src/main/java/org/openelisglobal/common/rest/util/DisplayListPaging.java b/src/main/java/org/openelisglobal/common/rest/util/DisplayListPaging.java
index 0ba51570d2..0cda70ac0d 100644
--- a/src/main/java/org/openelisglobal/common/rest/util/DisplayListPaging.java
+++ b/src/main/java/org/openelisglobal/common/rest/util/DisplayListPaging.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.paging.IPageDivider;
import org.openelisglobal.common.paging.IPageFlattener;
diff --git a/src/main/java/org/openelisglobal/common/rest/util/PatientDashBoardPaging.java b/src/main/java/org/openelisglobal/common/rest/util/PatientDashBoardPaging.java
index af73d3e384..f0b25ce73f 100644
--- a/src/main/java/org/openelisglobal/common/rest/util/PatientDashBoardPaging.java
+++ b/src/main/java/org/openelisglobal/common/rest/util/PatientDashBoardPaging.java
@@ -16,7 +16,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.paging.IPageDivider;
import org.openelisglobal.common.paging.IPageFlattener;
diff --git a/src/main/java/org/openelisglobal/common/rest/util/PatientSearchResultsPaging.java b/src/main/java/org/openelisglobal/common/rest/util/PatientSearchResultsPaging.java
index c5e3d6a90b..153d5fda92 100644
--- a/src/main/java/org/openelisglobal/common/rest/util/PatientSearchResultsPaging.java
+++ b/src/main/java/org/openelisglobal/common/rest/util/PatientSearchResultsPaging.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.paging.*;
import org.openelisglobal.common.provider.query.PatientSearchResults;
diff --git a/src/main/java/org/openelisglobal/common/security/PageIdentityUtil.java b/src/main/java/org/openelisglobal/common/security/PageIdentityUtil.java
index dd82ee7f21..a6a2e549da 100644
--- a/src/main/java/org/openelisglobal/common/security/PageIdentityUtil.java
+++ b/src/main/java/org/openelisglobal/common/security/PageIdentityUtil.java
@@ -15,7 +15,7 @@
*/
package org.openelisglobal.common.security;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/common/service/DatabaseCleanServiceImpl.java b/src/main/java/org/openelisglobal/common/service/DatabaseCleanServiceImpl.java
index 20b564e902..79546aaec6 100644
--- a/src/main/java/org/openelisglobal/common/service/DatabaseCleanServiceImpl.java
+++ b/src/main/java/org/openelisglobal/common/service/DatabaseCleanServiceImpl.java
@@ -2,8 +2,8 @@
import java.sql.Connection;
import java.sql.SQLException;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
import org.hibernate.Session;
import org.hibernate.jdbc.Work;
import org.springframework.stereotype.Service;
diff --git a/src/main/java/org/openelisglobal/common/services/DisplayListService.java b/src/main/java/org/openelisglobal/common/services/DisplayListService.java
index d1649f99a7..be2c1bd70c 100644
--- a/src/main/java/org/openelisglobal/common/services/DisplayListService.java
+++ b/src/main/java/org/openelisglobal/common/services/DisplayListService.java
@@ -21,7 +21,7 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
diff --git a/src/main/java/org/openelisglobal/common/services/PluginAnalyzerService.java b/src/main/java/org/openelisglobal/common/services/PluginAnalyzerService.java
index a3aca79b6e..a380108af2 100644
--- a/src/main/java/org/openelisglobal/common/services/PluginAnalyzerService.java
+++ b/src/main/java/org/openelisglobal/common/services/PluginAnalyzerService.java
@@ -21,7 +21,7 @@
import java.util.List;
import java.util.Map;
import java.util.Optional;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.analyzer.service.AnalyzerService;
import org.openelisglobal.analyzer.valueholder.Analyzer;
import org.openelisglobal.analyzerimport.service.AnalyzerTestMappingService;
diff --git a/src/main/java/org/openelisglobal/common/services/PluginMenuService.java b/src/main/java/org/openelisglobal/common/services/PluginMenuService.java
index 38932a8582..19e2e13e69 100644
--- a/src/main/java/org/openelisglobal/common/services/PluginMenuService.java
+++ b/src/main/java/org/openelisglobal/common/services/PluginMenuService.java
@@ -19,7 +19,7 @@
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.menu.service.MenuService;
import org.openelisglobal.menu.util.MenuUtil;
import org.openelisglobal.menu.valueholder.Menu;
diff --git a/src/main/java/org/openelisglobal/common/services/ReportTrackingService.java b/src/main/java/org/openelisglobal/common/services/ReportTrackingService.java
index 19e2704bdb..40ec2b7868 100644
--- a/src/main/java/org/openelisglobal/common/services/ReportTrackingService.java
+++ b/src/main/java/org/openelisglobal/common/services/ReportTrackingService.java
@@ -15,7 +15,7 @@
import java.sql.Timestamp;
import java.util.List;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.util.DateUtil;
import org.openelisglobal.common.util.validator.GenericValidator;
import org.openelisglobal.referencetables.service.ReferenceTablesService;
diff --git a/src/main/java/org/openelisglobal/common/services/StatusService.java b/src/main/java/org/openelisglobal/common/services/StatusService.java
index a55b5afa9d..5387edb826 100644
--- a/src/main/java/org/openelisglobal/common/services/StatusService.java
+++ b/src/main/java/org/openelisglobal/common/services/StatusService.java
@@ -18,7 +18,7 @@
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/common/services/TableIdService.java b/src/main/java/org/openelisglobal/common/services/TableIdService.java
index 623f96ea9d..6f14201b93 100644
--- a/src/main/java/org/openelisglobal/common/services/TableIdService.java
+++ b/src/main/java/org/openelisglobal/common/services/TableIdService.java
@@ -16,7 +16,7 @@
package org.openelisglobal.common.services;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.valueholder.AddressPart;
import org.openelisglobal.observationhistorytype.service.ObservationHistoryTypeService;
diff --git a/src/main/java/org/openelisglobal/common/services/TestIdentityService.java b/src/main/java/org/openelisglobal/common/services/TestIdentityService.java
index eff7c19284..e942c7891f 100644
--- a/src/main/java/org/openelisglobal/common/services/TestIdentityService.java
+++ b/src/main/java/org/openelisglobal/common/services/TestIdentityService.java
@@ -16,7 +16,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Objects;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.panel.service.PanelService;
import org.openelisglobal.test.service.TestService;
diff --git a/src/main/java/org/openelisglobal/common/services/historyservices/AbstractHistoryService.java b/src/main/java/org/openelisglobal/common/services/historyservices/AbstractHistoryService.java
index 081331c0c4..6f72013b42 100644
--- a/src/main/java/org/openelisglobal/common/services/historyservices/AbstractHistoryService.java
+++ b/src/main/java/org/openelisglobal/common/services/historyservices/AbstractHistoryService.java
@@ -191,7 +191,7 @@ protected String extractStatus(String changes) {
protected String getViewableValue(String value, Result result) {
if (TypeOfTestResultServiceImpl.ResultType.isDictionaryVariant(result.getResultType())
- && !GenericValidator.isBlankOrNull(value) && org.apache.commons.lang.StringUtils.isNumeric(value)) {
+ && !GenericValidator.isBlankOrNull(value) && org.apache.commons.lang3.StringUtils.isNumeric(value)) {
Dictionary dictionaryValue = dictionaryService.getDictionaryById(value);
value = dictionaryValue != null ? dictionaryValue.getDictEntry()
: MessageUtil.getMessage("result.undefined");
diff --git a/src/main/java/org/openelisglobal/common/servlet/BaseAjaxServlet.java b/src/main/java/org/openelisglobal/common/servlet/BaseAjaxServlet.java
new file mode 100644
index 0000000000..859de0c504
--- /dev/null
+++ b/src/main/java/org/openelisglobal/common/servlet/BaseAjaxServlet.java
@@ -0,0 +1,63 @@
+package org.openelisglobal.common.servlet;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * An abstract class from which each example servlet extends. This class wraps the XML creation
+ * (delegated to the child servlet class) and submission back through the HTTP response.
+ *
+ * @author Darren L. Spurgeon Modified by Caleb Steele-Lane for jakarta migration
+ */
+public abstract class BaseAjaxServlet extends HttpServlet {
+
+ /**
+ * @see jakarta.servlet.http.HttpServlet#doGet(jakarta.servlet.http.HttpServletRequest,
+ * jakarta.servlet.http.HttpServletResponse)
+ */
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ String xml = null;
+
+ try {
+ xml = getXmlContent(request, response);
+ } catch (Exception ex) {
+ // Send back a 500 error code.
+ response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "Can not create response");
+ return;
+ }
+
+ // Set content to xml
+ response.setContentType("text/xml; charset=UTF-8");
+ response.setHeader("Cache-Control", "no-cache");
+ PrintWriter pw = response.getWriter();
+ pw.write(xml);
+ pw.close();
+ }
+
+ /**
+ * @see jakarta.servlet.http.HttpServlet#doPost(jakarta.servlet.http.HttpServletRequest,
+ * jakarta.servlet.http.HttpServletResponse)
+ */
+ public void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+ doGet(request, response);
+ }
+
+ /**
+ * Each child class should override this method to generate the specific XML content necessary for
+ * each AJAX action.
+ *
+ * @param request the {@jakarta.servlet.http.HttpServletRequest} object
+ * @param response the {@jakarta.servlet.http.HttpServletResponse} object
+ * @return a {@java.lang.String} representation of the XML response/content
+ */
+ public abstract String getXmlContent(HttpServletRequest request, HttpServletResponse response)
+ throws Exception;
+}
diff --git a/src/main/java/org/openelisglobal/common/servlet/autocomplete/AjaxXMLServlet.java b/src/main/java/org/openelisglobal/common/servlet/autocomplete/AjaxXMLServlet.java
deleted file mode 100644
index 3c43bfc331..0000000000
--- a/src/main/java/org/openelisglobal/common/servlet/autocomplete/AjaxXMLServlet.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- * The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License");
- * you may not use this file except in compliance with the License. You may obtain a copy of the
- * License at http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
- * ANY KIND, either express or implied. See the License for the specific language governing rights
- * and limitations under the License.
- *
- *
The Original Code is OpenELIS code.
- *
- *
Copyright (C) The Minnesota Department of Health. All Rights Reserved.
- */
-package org.openelisglobal.common.servlet.autocomplete;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.ajaxtags.helpers.AjaxXmlBuilder;
-import org.ajaxtags.servlets.BaseAjaxServlet;
-import org.openelisglobal.common.provider.autocomplete.AutocompleteProviderFactory;
-import org.openelisglobal.common.provider.autocomplete.BaseAutocompleteProvider;
-import org.openelisglobal.login.dao.UserModuleService;
-import org.openelisglobal.spring.util.SpringContext;
-import org.springframework.security.web.csrf.CsrfToken;
-import org.springframework.security.web.csrf.HttpSessionCsrfTokenRepository;
-
-public class AjaxXMLServlet extends BaseAjaxServlet {
-
- @Override
- public String getXmlContent(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
- boolean unauthorized = false;
-
- // check for module authentication
- UserModuleService userModuleService = SpringContext.getBean(UserModuleService.class);
- unauthorized |= userModuleService.isSessionExpired(request);
-
- // check for csrf token to prevent js hijacking since we employ callback
- // functions
- CsrfToken officialToken = new HttpSessionCsrfTokenRepository().loadToken(request);
- String clientSuppliedToken = request.getHeader("X-CSRF-Token");
- unauthorized |= !officialToken.getToken().equals(clientSuppliedToken);
-
- if (unauthorized) {
- response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
- return new AjaxXmlBuilder().toString();
- }
-
- String autocompleteProvider = request.getParameter("provider");
- String autocompleteFieldName = request.getParameter("fieldName");
- String autocompleteId = request.getParameter("idName");
-
- BaseAutocompleteProvider provider = AutocompleteProviderFactory.getInstance()
- .getAutocompleteProvider(autocompleteProvider);
-
- provider.setServlet(this);
- List list = provider.processRequest(request, response);
-
- return new AjaxXmlBuilder().addItems(list, autocompleteFieldName, autocompleteId).toString();
- }
-}
diff --git a/src/main/java/org/openelisglobal/common/servlet/barcode/LabelMakerServlet.java b/src/main/java/org/openelisglobal/common/servlet/barcode/LabelMakerServlet.java
index fe33882e3e..8afcc0d850 100644
--- a/src/main/java/org/openelisglobal/common/servlet/barcode/LabelMakerServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/barcode/LabelMakerServlet.java
@@ -4,11 +4,11 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.commons.lang.StringUtils;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.barcode.BarcodeLabelMaker;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/common/servlet/data/AjaxServlet.java b/src/main/java/org/openelisglobal/common/servlet/data/AjaxServlet.java
index 3d41735225..6053803278 100644
--- a/src/main/java/org/openelisglobal/common/servlet/data/AjaxServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/data/AjaxServlet.java
@@ -14,10 +14,10 @@
package org.openelisglobal.common.servlet.data;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.provider.data.BaseDataProvider;
/**
diff --git a/src/main/java/org/openelisglobal/common/servlet/data/AjaxXMLServlet.java b/src/main/java/org/openelisglobal/common/servlet/data/AjaxXMLServlet.java
index e281d12d2c..57db1d02a5 100644
--- a/src/main/java/org/openelisglobal/common/servlet/data/AjaxXMLServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/data/AjaxXMLServlet.java
@@ -14,9 +14,9 @@
package org.openelisglobal.common.servlet.data;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.provider.data.BaseDataProvider;
import org.openelisglobal.common.provider.data.DataProviderFactory;
diff --git a/src/main/java/org/openelisglobal/common/servlet/query/AjaxQueryXMLServlet.java b/src/main/java/org/openelisglobal/common/servlet/query/AjaxQueryXMLServlet.java
index 715dc6f3e5..9b5a1266fd 100644
--- a/src/main/java/org/openelisglobal/common/servlet/query/AjaxQueryXMLServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/query/AjaxQueryXMLServlet.java
@@ -1,9 +1,9 @@
package org.openelisglobal.common.servlet.query;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.json.XML;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.provider.query.BaseQueryProvider;
diff --git a/src/main/java/org/openelisglobal/common/servlet/reports/ReportsServlet.java b/src/main/java/org/openelisglobal/common/servlet/reports/ReportsServlet.java
index 8a75a55951..ac2c27aabe 100644
--- a/src/main/java/org/openelisglobal/common/servlet/reports/ReportsServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/reports/ReportsServlet.java
@@ -21,12 +21,12 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.provider.reports.BaseReportsProvider;
import org.openelisglobal.common.provider.reports.ReportsProviderFactory;
import org.openelisglobal.internationalization.MessageUtil;
@@ -42,8 +42,8 @@ public class ReportsServlet extends HttpServlet {
* (non-Javadoc)
*
* @see
- * javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest,
- * javax.servlet.http.HttpServletResponse)
+ * jakarta.servlet.http.HttpServlet#doGet(jakarta.servlet.http.HttpServletRequest,
+ * jakarta.servlet.http.HttpServletResponse)
*/
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
diff --git a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXMLServlet.java b/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXMLServlet.java
deleted file mode 100644
index cb8dd13146..0000000000
--- a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXMLServlet.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License");
- * you may not use this file except in compliance with the License. You may obtain a copy of the
- * License at http://www.mozilla.org/MPL/
- *
- *
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
- * ANY KIND, either express or implied. See the License for the specific language governing rights
- * and limitations under the License.
- *
- *
The Original Code is OpenELIS code.
- *
- *
Copyright (C) The Minnesota Department of Health. All Rights Reserved.
- */
-package org.openelisglobal.common.servlet.selectdropdown;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.ajaxtags.helpers.AjaxXmlBuilder;
-import org.ajaxtags.servlets.BaseAjaxServlet;
-import org.openelisglobal.common.provider.selectdropdown.BaseSelectDropDownProvider;
-import org.openelisglobal.common.provider.selectdropdown.SelectDropDownProviderFactory;
-import org.openelisglobal.internationalization.MessageUtil;
-import org.openelisglobal.login.dao.UserModuleService;
-import org.openelisglobal.spring.util.SpringContext;
-import org.springframework.security.web.csrf.CsrfToken;
-import org.springframework.security.web.csrf.HttpSessionCsrfTokenRepository;
-
-public class AjaxXMLServlet extends BaseAjaxServlet {
-
- @Override
- public String getXmlContent(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
- boolean unauthorized = false;
-
- // check for module authentication
- UserModuleService userModuleService = SpringContext.getBean(UserModuleService.class);
- unauthorized |= userModuleService.isSessionExpired(request);
-
- // check for csrf token to prevent js hijacking since we employ callback
- // functions
- CsrfToken officialToken = new HttpSessionCsrfTokenRepository().loadToken(request);
- String clientSuppliedToken = request.getHeader("X-CSRF-Token");
- unauthorized |= !officialToken.getToken().equals(clientSuppliedToken);
-
- if (unauthorized) {
- response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
- response.getWriter().println(MessageUtil.getMessage("message.error.unauthorized"));
- return new AjaxXmlBuilderForSortableTests().toString();
- }
-
- String selectDropDownProvider = request.getParameter("provider");
- String selectDropDownFieldName = request.getParameter("fieldName");
- String selectDropDownId = request.getParameter("idName");
-
- // bugzilla 1844 adding sorting ability
- boolean sortable = false;
- String selectDropDownSortFieldA = null;
- String selectDropDownSortFieldB = null;
- String selectDropDownAlternateLabel = null;
- // this is sortable test target
- if (request.getParameter("sortFieldA") != null && request.getParameter("sortFieldB") != null
- && request.getParameter("alternateLabel") != null) {
- selectDropDownSortFieldA = request.getParameter("sortFieldA");
- selectDropDownSortFieldB = request.getParameter("sortFieldB");
- selectDropDownAlternateLabel = request.getParameter("alternateLabel");
- sortable = true;
- }
-
- BaseSelectDropDownProvider provider = SelectDropDownProviderFactory.getInstance()
- .getSelectDropDownProvider(selectDropDownProvider);
-
- provider.setServlet(this);
- List list = provider.processRequest(request, response);
-
- // bugzilla 1844 adding toggle sort and toggle label values
- if (sortable) {
- AjaxXmlBuilderForSortableTests axb = new AjaxXmlBuilderForSortableTests();
- // add blank option!!
- axb.addItemAsCData("", "", "", "", "");
- axb.addItems(list, selectDropDownFieldName, selectDropDownId, selectDropDownSortFieldA,
- selectDropDownSortFieldB, selectDropDownAlternateLabel);
- return axb.toString();
-
- } else {
- AjaxXmlBuilder axb = new AjaxXmlBuilder();
- // add blank option!!
- axb.addItemAsCData("", "");
- axb.addItems(list, selectDropDownFieldName, selectDropDownId);
- return axb.toString();
- }
- }
-}
diff --git a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXmlBuilderForSortableTests.java b/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXmlBuilderForSortableTests.java
deleted file mode 100644
index 60aee02376..0000000000
--- a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/AjaxXmlBuilderForSortableTests.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/**
- * The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License");
- * you may not use this file except in compliance with the License. You may obtain a copy of the
- * License at http://www.mozilla.org/MPL/
- *
- *
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
- * ANY KIND, either express or implied. See the License for the specific language governing rights
- * and limitations under the License.
- *
- *
The Original Code is OpenELIS code.
- *
- *
Copyright (C) The Minnesota Department of Health. All Rights Reserved.
- */
-package org.openelisglobal.common.servlet.selectdropdown;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import org.apache.commons.beanutils.BeanUtils;
-import org.openelisglobal.common.util.XMLUtil;
-import org.owasp.encoder.Encode;
-
-/**
- * Helper class to build valid XML typically returned in a response to the
- * client.
- *
- *
- * author: benzd1 bugzilla 1844: extending AjaxXmlBuilder for testsection->test
- * select making extended version of AjaxJspTag.Select sortable (toggle between
- * sorting by 2 different properties, toggling label value between 2 different
- * values according to sort
- */
-public class AjaxXmlBuilderForSortableTests extends org.ajaxtags.helpers.AjaxXmlBuilder {
-
- private String encoding = "UTF-8";
- private List items = new ArrayList();
-
- @Override
- public String getEncoding() {
- return encoding;
- }
-
- @Override
- public void setEncoding(String encoding) {
- this.encoding = encoding;
- }
-
- /**
- * Add item to XML.
- *
- * @param name The name of the item
- * @param value The value of the item
- * @return
- */
- public AjaxXmlBuilderForSortableTests addItem(String name, String value, String sortFieldA, String sortFieldB,
- String alternateLabel) {
- items.add(new SortableTestItem(name, value, sortFieldA, sortFieldB, alternateLabel, false));
- return this;
- }
-
- /**
- * Add item wrapped with inside a CDATA element.
- *
- * @param name The name of the item
- * @param value The value of the item
- * @return
- */
- public AjaxXmlBuilderForSortableTests addItemAsCData(String name, String value, String sortFieldA,
- String sortFieldB, String alternateLabel) {
- items.add(new SortableTestItem(name, value, sortFieldA, sortFieldB, alternateLabel, true));
- return this;
- }
-
- /**
- * Add items from a collection.
- *
- * @param collection
- * @param nameProperty
- * @param valueProperty
- * @return
- * @throws IllegalAccessException
- * @throws InvocationTargetException
- * @throws NoSuchMethodException
- */
- public AjaxXmlBuilderForSortableTests addItems(Collection collection, String nameProperty, String valueProperty,
- String sortFieldAProperty, String sortFieldBProperty, String alternateLabelProperty)
- throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
- return addItems(collection, nameProperty, valueProperty, sortFieldAProperty, sortFieldBProperty,
- alternateLabelProperty, false);
- }
-
- /**
- * Add items from a collection.
- *
- * @param collection
- * @param nameProperty
- * @param valueProperty
- * @return
- * @throws IllegalAccessException
- * @throws InvocationTargetException
- * @throws NoSuchMethodException
- */
- public AjaxXmlBuilderForSortableTests addItems(Collection collection, String nameProperty, String valueProperty,
- String sortFieldAProperty, String sortFieldBProperty, String alternateLabelProperty, boolean asCData)
- throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
- for (Iterator iter = collection.iterator(); iter.hasNext();) {
- Object element = iter.next();
- String name = BeanUtils.getProperty(element, nameProperty);
- String value = BeanUtils.getProperty(element, valueProperty);
- String sortFieldA = BeanUtils.getProperty(element, sortFieldAProperty);
- String sortFieldB = BeanUtils.getProperty(element, sortFieldBProperty);
- String alternateLabel = BeanUtils.getProperty(element, alternateLabelProperty);
- if (asCData) {
- items.add(new SortableTestItem(name, value, sortFieldA, sortFieldB, alternateLabel, false));
- } else {
- items.add(new SortableTestItem(name, value, sortFieldA, sortFieldB, alternateLabel, true));
- }
- }
- return this;
- }
-
- /**
- * Add items from a collection as CDATA element.
- *
- * @param collection
- * @param nameProperty
- * @param valueProperty
- * @return
- * @throws IllegalAccessException
- * @throws InvocationTargetException
- * @throws NoSuchMethodException
- */
- public AjaxXmlBuilderForSortableTests addItemsAsCData(Collection collection, String nameProperty,
- String valueProperty, String sortFieldAProperty, String sortFieldBProperty, String alternateLabelProperty)
- throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
- return addItems(collection, nameProperty, valueProperty, sortFieldAProperty, sortFieldBProperty,
- alternateLabelProperty, true);
- }
-
- /**
- * @see java.lang.Object#toString()
- */
- @Override
- public String toString() {
- StringBuilder xml = new StringBuilder().append("");
-
- xml.append("");
- xml.append("");
- for (Iterator iter = items.iterator(); iter.hasNext();) {
- SortableTestItem item = (SortableTestItem) iter.next();
- xml.append("- ");
- xml.append("
");
- if (item.isAsCData()) {
- xml.append("");
- } else {
- xml.append(Encode.forXmlContent(item.getName()));
- }
- xml.append(" ");
-
- xml.append("");
- if (item.isAsCData()) {
- xml.append("");
- } else {
- xml.append(Encode.forXmlContent(item.getValue()));
- }
- xml.append(" ");
-
- xml.append("");
- if (item.isAsCData()) {
- xml.append("");
- } else {
- xml.append(item.getSortFieldA());
- }
- xml.append(" ");
-
- xml.append("");
- if (item.isAsCData()) {
- xml.append("");
- } else {
- xml.append(Encode.forXmlContent(item.getSortFieldB()));
- }
- xml.append(" ");
-
- xml.append("");
- if (item.isAsCData()) {
- xml.append("");
- } else {
- xml.append(Encode.forXmlContent(item.getAlternateLabel()));
- }
- xml.append(" ");
-
- xml.append(" ");
- }
- xml.append(" ");
- xml.append(" ");
-
- return xml.toString();
- }
-}
diff --git a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/SortableTestItem.java b/src/main/java/org/openelisglobal/common/servlet/selectdropdown/SortableTestItem.java
index dc9072abf2..29bf6c7ee3 100644
--- a/src/main/java/org/openelisglobal/common/servlet/selectdropdown/SortableTestItem.java
+++ b/src/main/java/org/openelisglobal/common/servlet/selectdropdown/SortableTestItem.java
@@ -13,7 +13,7 @@
*/
package org.openelisglobal.common.servlet.selectdropdown;
-import org.apache.commons.lang.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringBuilder;
/**
* @author benzd1
diff --git a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxServlet.java b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxServlet.java
index b219691f10..e65c04c2f0 100644
--- a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxServlet.java
@@ -14,10 +14,10 @@
package org.openelisglobal.common.servlet.validation;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.provider.validation.BaseValidationProvider;
public abstract class AjaxServlet extends HttpServlet {
diff --git a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxTextServlet.java b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxTextServlet.java
index a5dc4a7ad5..7f6248ecef 100644
--- a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxTextServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxTextServlet.java
@@ -14,9 +14,9 @@
package org.openelisglobal.common.servlet.validation;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.provider.validation.BaseValidationProvider;
import org.openelisglobal.common.provider.validation.ValidationProviderFactory;
import org.openelisglobal.common.util.StringUtil;
diff --git a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxXMLServlet.java b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxXMLServlet.java
index 035c6b09df..56404d4908 100644
--- a/src/main/java/org/openelisglobal/common/servlet/validation/AjaxXMLServlet.java
+++ b/src/main/java/org/openelisglobal/common/servlet/validation/AjaxXMLServlet.java
@@ -14,9 +14,9 @@
package org.openelisglobal.common.servlet.validation;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.json.XML;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.provider.validation.BaseValidationProvider;
diff --git a/src/main/java/org/openelisglobal/common/util/ControllerUtills.java b/src/main/java/org/openelisglobal/common/util/ControllerUtills.java
index 1d10cb279a..83f8632a1f 100644
--- a/src/main/java/org/openelisglobal/common/util/ControllerUtills.java
+++ b/src/main/java/org/openelisglobal/common/util/ControllerUtills.java
@@ -1,6 +1,6 @@
package org.openelisglobal.common.util;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.login.valueholder.UserSessionData;
diff --git a/src/main/java/org/openelisglobal/common/util/DefaultConfigurationProperties.java b/src/main/java/org/openelisglobal/common/util/DefaultConfigurationProperties.java
index fa56f725fb..32866c5e6c 100644
--- a/src/main/java/org/openelisglobal/common/util/DefaultConfigurationProperties.java
+++ b/src/main/java/org/openelisglobal/common/util/DefaultConfigurationProperties.java
@@ -34,7 +34,7 @@
import java.util.Properties;
import java.util.Set;
import java.util.regex.Pattern;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.lang3.EnumUtils;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/common/util/URLUtil.java b/src/main/java/org/openelisglobal/common/util/URLUtil.java
index c993492750..fadd0a0ff1 100644
--- a/src/main/java/org/openelisglobal/common/util/URLUtil.java
+++ b/src/main/java/org/openelisglobal/common/util/URLUtil.java
@@ -1,6 +1,6 @@
package org.openelisglobal.common.util;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
public class URLUtil {
diff --git a/src/main/java/org/openelisglobal/common/util/UTF8Filter.java b/src/main/java/org/openelisglobal/common/util/UTF8Filter.java
index f85807cf71..37762bbf2b 100644
--- a/src/main/java/org/openelisglobal/common/util/UTF8Filter.java
+++ b/src/main/java/org/openelisglobal/common/util/UTF8Filter.java
@@ -17,12 +17,12 @@
import java.io.IOException;
import java.nio.charset.StandardCharsets;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
// TODO csl - unused
public class UTF8Filter implements Filter {
diff --git a/src/main/java/org/openelisglobal/common/valueholder/AccessionNumberInfo.java b/src/main/java/org/openelisglobal/common/valueholder/AccessionNumberInfo.java
index 738d2ed03c..8ba7f59e80 100644
--- a/src/main/java/org/openelisglobal/common/valueholder/AccessionNumberInfo.java
+++ b/src/main/java/org/openelisglobal/common/valueholder/AccessionNumberInfo.java
@@ -2,14 +2,14 @@
import java.io.Serializable;
import java.util.Objects;
-import javax.persistence.Column;
-import javax.persistence.Embeddable;
-import javax.persistence.EmbeddedId;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.persistence.Column;
+import jakarta.persistence.Embeddable;
+import jakarta.persistence.EmbeddedId;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
import org.openelisglobal.common.provider.validation.AccessionNumberValidatorFactory.AccessionFormat;
@Entity(name = "accession_number_info")
diff --git a/src/main/java/org/openelisglobal/common/valueholder/BaseObject.java b/src/main/java/org/openelisglobal/common/valueholder/BaseObject.java
index 8f4814985f..061c4cb416 100644
--- a/src/main/java/org/openelisglobal/common/valueholder/BaseObject.java
+++ b/src/main/java/org/openelisglobal/common/valueholder/BaseObject.java
@@ -20,10 +20,10 @@
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;
-import javax.persistence.Column;
-import javax.persistence.MappedSuperclass;
-import javax.persistence.Transient;
-import javax.persistence.Version;
+import jakarta.persistence.Column;
+import jakarta.persistence.MappedSuperclass;
+import jakarta.persistence.Transient;
+import jakarta.persistence.Version;
import org.openelisglobal.internationalization.MessageUtil;
@MappedSuperclass
diff --git a/src/main/java/org/openelisglobal/config/AnnotationWebAppInitializer.java b/src/main/java/org/openelisglobal/config/AnnotationWebAppInitializer.java
index 0567ab273b..e1b9d71c0f 100644
--- a/src/main/java/org/openelisglobal/config/AnnotationWebAppInitializer.java
+++ b/src/main/java/org/openelisglobal/config/AnnotationWebAppInitializer.java
@@ -1,8 +1,8 @@
package org.openelisglobal.config;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRegistration;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRegistration;
import org.openelisglobal.common.servlet.barcode.LabelMakerServlet;
import org.openelisglobal.common.servlet.query.AjaxQueryXMLServlet;
import org.openelisglobal.common.servlet.reports.ReportsServlet;
@@ -57,15 +57,15 @@ private void setupServlets(ServletContext servletContext, AnnotationConfigWebApp
ajaxQueryXMLServlet.setLoadOnStartup(++startupOrder);
ajaxQueryXMLServlet.addMapping("/ajaxQueryXML");
- ServletRegistration.Dynamic ajaxAutocompleteXMLServlet = servletContext.addServlet("ajaxAutocompleteXML",
- org.openelisglobal.common.servlet.autocomplete.AjaxXMLServlet.class);
- ajaxAutocompleteXMLServlet.setLoadOnStartup(++startupOrder);
- ajaxAutocompleteXMLServlet.addMapping("/ajaxAutocompleteXML");
+ // ServletRegistration.Dynamic ajaxAutocompleteXMLServlet = servletContext.addServlet("ajaxAutocompleteXML",
+ // org.openelisglobal.common.servlet.autocomplete.AjaxXMLServlet.class);
+ // ajaxAutocompleteXMLServlet.setLoadOnStartup(++startupOrder);
+ // ajaxAutocompleteXMLServlet.addMapping("/ajaxAutocompleteXML");
- ServletRegistration.Dynamic ajaxSelectDropDownXMLServlet = servletContext.addServlet("ajaxSelectDropDownXML",
- org.openelisglobal.common.servlet.selectdropdown.AjaxXMLServlet.class);
- ajaxSelectDropDownXMLServlet.setLoadOnStartup(++startupOrder);
- ajaxSelectDropDownXMLServlet.addMapping("/ajaxSelectDropDownXML");
+ // ServletRegistration.Dynamic ajaxSelectDropDownXMLServlet = servletContext.addServlet("ajaxSelectDropDownXML",
+ // org.openelisglobal.common.servlet.selectdropdown.AjaxXMLServlet.class);
+ // ajaxSelectDropDownXMLServlet.setLoadOnStartup(++startupOrder);
+ // ajaxSelectDropDownXMLServlet.addMapping("/ajaxSelectDropDownXML");
ServletRegistration.Dynamic reportsServlet = servletContext.addServlet("reportsServlet", ReportsServlet.class);
reportsServlet.setLoadOnStartup(++startupOrder);
diff --git a/src/main/java/org/openelisglobal/config/AppConfig.java b/src/main/java/org/openelisglobal/config/AppConfig.java
index 5ab72afa52..d1998bda6b 100644
--- a/src/main/java/org/openelisglobal/config/AppConfig.java
+++ b/src/main/java/org/openelisglobal/config/AppConfig.java
@@ -3,7 +3,7 @@
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
-import com.fasterxml.jackson.datatype.hibernate5.Hibernate5Module;
+import com.fasterxml.jackson.datatype.hibernate5.jakarta.Hibernate5JakartaModule;
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import java.net.URI;
@@ -39,7 +39,7 @@
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.JavaMailSenderImpl;
-import org.springframework.web.multipart.commons.CommonsMultipartResolver;
+import org.springframework.web.multipart.support.StandardServletMultipartResolver;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.ViewResolver;
@@ -85,10 +85,8 @@ public ViewResolver internalResourceViewResolver() {
}
@Bean(name = "filterMultipartResolver")
- public CommonsMultipartResolver multipartResolver() {
- CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
- multipartResolver.setDefaultEncoding("utf-8");
- multipartResolver.setMaxUploadSize(20848820);
+ public StandardServletMultipartResolver multipartResolver() {
+ StandardServletMultipartResolver multipartResolver = new StandardServletMultipartResolver();
multipartResolver.setResolveLazily(false);
return multipartResolver;
}
@@ -177,7 +175,7 @@ public MappingJackson2HttpMessageConverter jacksonMessageConverter() {
ObjectMapper mapper = new ObjectMapper();
// Registering Hibernate4Module to support lazy objects
mapper.registerModule(new JavaTimeModule());
- mapper.registerModule(new Hibernate5Module());
+ mapper.registerModule(new Hibernate5JakartaModule());
mapper.registerModule(new Jdk8Module());
mapper.setSerializationInclusion(Include.NON_NULL);
diff --git a/src/main/java/org/openelisglobal/config/AsyncConfig.java b/src/main/java/org/openelisglobal/config/AsyncConfig.java
index 34efe1c38a..1e70ce2723 100644
--- a/src/main/java/org/openelisglobal/config/AsyncConfig.java
+++ b/src/main/java/org/openelisglobal/config/AsyncConfig.java
@@ -1,7 +1,7 @@
package org.openelisglobal.config;
import java.util.concurrent.Executor;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.task.SimpleAsyncTaskExecutor;
diff --git a/src/main/java/org/openelisglobal/config/ControllerSetup.java b/src/main/java/org/openelisglobal/config/ControllerSetup.java
index 72d4589b76..58b129bc9c 100644
--- a/src/main/java/org/openelisglobal/config/ControllerSetup.java
+++ b/src/main/java/org/openelisglobal/config/ControllerSetup.java
@@ -17,6 +17,7 @@
import org.springframework.core.annotation.Order;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
+import org.springframework.http.HttpStatusCode;
import org.springframework.http.ResponseEntity;
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.validation.FieldError;
@@ -59,14 +60,14 @@ protected ResponseEntity handleLIMSRuntimeException(RuntimeException ex,
@Override
protected ResponseEntity handleHttpMessageNotReadable(HttpMessageNotReadableException ex,
- HttpHeaders headers, HttpStatus status, WebRequest request) {
+ HttpHeaders headers, HttpStatusCode status, WebRequest request) {
LogEvent.logError(ex);
return super.handleHttpMessageNotReadable(ex, headers, status, request);
}
@Override
protected ResponseEntity handleMissingServletRequestParameter(MissingServletRequestParameterException ex,
- HttpHeaders headers, HttpStatus status, WebRequest request) {
+ HttpHeaders headers, HttpStatusCode status, WebRequest request) {
LogEvent.logError(ex);
return super.handleMissingServletRequestParameter(ex, headers, status, request);
}
@@ -74,7 +75,7 @@ protected ResponseEntity handleMissingServletRequestParameter(MissingSer
// error handle for @Valid
@Override
protected ResponseEntity handleMethodArgumentNotValid(MethodArgumentNotValidException ex,
- HttpHeaders headers, HttpStatus status, WebRequest request) {
+ HttpHeaders headers, HttpStatusCode status, WebRequest request) {
Map body = new LinkedHashMap<>();
body.put("timestamp", new Date());
@@ -99,7 +100,7 @@ protected ResponseEntity handleMethodArgumentNotValid(MethodArgumentNotV
@Override
protected ResponseEntity handleHttpMediaTypeNotSupported(HttpMediaTypeNotSupportedException ex,
- HttpHeaders headers, HttpStatus status, WebRequest request) {
+ HttpHeaders headers, HttpStatusCode status, WebRequest request) {
LogEvent.logError(ex);
return super.handleHttpMediaTypeNotSupported(ex, headers, status, request);
}
diff --git a/src/main/java/org/openelisglobal/config/CreateAdminUserTask.java b/src/main/java/org/openelisglobal/config/CreateAdminUserTask.java
index cab0d53bf2..a245e51fb7 100644
--- a/src/main/java/org/openelisglobal/config/CreateAdminUserTask.java
+++ b/src/main/java/org/openelisglobal/config/CreateAdminUserTask.java
@@ -7,7 +7,7 @@
import java.nio.file.Paths;
import java.sql.Date;
import java.util.Calendar;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/config/DatabaseConfig.java b/src/main/java/org/openelisglobal/config/DatabaseConfig.java
index 112660cb6c..89ca5abe3d 100644
--- a/src/main/java/org/openelisglobal/config/DatabaseConfig.java
+++ b/src/main/java/org/openelisglobal/config/DatabaseConfig.java
@@ -12,12 +12,12 @@
import org.springframework.core.annotation.Order;
import org.springframework.jdbc.datasource.AbstractDataSource;
import org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup;
-import org.springframework.retry.annotation.Backoff;
-import org.springframework.retry.annotation.EnableRetry;
-import org.springframework.retry.annotation.Retryable;
+// import org.springframework.retry.annotation.Backoff;
+// import org.springframework.retry.annotation.EnableRetry;
+// import org.springframework.retry.annotation.Retryable;
@Configuration
-@EnableRetry
+// @EnableRetry
public class DatabaseConfig {
@Bean(destroyMethod = "close")
@@ -30,42 +30,42 @@ public DataSource dataSource() {
return dataSource;
}
- @Order(Ordered.HIGHEST_PRECEDENCE)
- private class RetryableDataSourceBeanPostProcessor implements BeanPostProcessor {
- @Override
- public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
- if (bean instanceof DataSource) {
- bean = new RetryableDataSource((DataSource) bean);
- }
- return bean;
- }
+ // @Order(Ordered.HIGHEST_PRECEDENCE)
+ // private class RetryableDataSourceBeanPostProcessor implements BeanPostProcessor {
+ // @Override
+ // public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
+ // if (bean instanceof DataSource) {
+ // bean = new RetryableDataSource((DataSource) bean);
+ // }
+ // return bean;
+ // }
- @Override
- public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
- return bean;
- }
- }
+ // @Override
+ // public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
+ // return bean;
+ // }
+ // }
- class RetryableDataSource extends AbstractDataSource {
+ // class RetryableDataSource extends AbstractDataSource {
- private DataSource delegate;
+ // private DataSource delegate;
- public RetryableDataSource(DataSource delegate) {
- this.delegate = delegate;
- }
+ // public RetryableDataSource(DataSource delegate) {
+ // this.delegate = delegate;
+ // }
- @Override
- @Retryable(maxAttempts = 10, backoff = @Backoff(multiplier = 2.3, maxDelay = 30000))
- public Connection getConnection() throws SQLException {
- LogEvent.logDebug(this.getClass().getSimpleName(), "getConnection()",
- "attempting connection to the database...");
- return delegate.getConnection();
- }
+ // @Override
+ // @Retryable(maxAttempts = 10, backoff = @Backoff(multiplier = 2.3, maxDelay = 30000))
+ // public Connection getConnection() throws SQLException {
+ // LogEvent.logDebug(this.getClass().getSimpleName(), "getConnection()",
+ // "attempting connection to the database...");
+ // return delegate.getConnection();
+ // }
- @Override
- @Retryable(maxAttempts = 10, backoff = @Backoff(multiplier = 2.3, maxDelay = 30000))
- public Connection getConnection(String username, String password) throws SQLException {
- return delegate.getConnection(username, password);
- }
- }
+ // @Override
+ // @Retryable(maxAttempts = 10, backoff = @Backoff(multiplier = 2.3, maxDelay = 30000))
+ // public Connection getConnection(String username, String password) throws SQLException {
+ // return delegate.getConnection(username, password);
+ // }
+ // }
}
diff --git a/src/main/java/org/openelisglobal/config/HibernateConfig.java b/src/main/java/org/openelisglobal/config/HibernateConfig.java
index 51508a10cd..6b31ca69c9 100644
--- a/src/main/java/org/openelisglobal/config/HibernateConfig.java
+++ b/src/main/java/org/openelisglobal/config/HibernateConfig.java
@@ -1,6 +1,6 @@
package org.openelisglobal.config;
-import javax.persistence.EntityManagerFactory;
+import jakarta.persistence.EntityManagerFactory;
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
diff --git a/src/main/java/org/openelisglobal/config/task/RegisterFhirHooksTask.java b/src/main/java/org/openelisglobal/config/task/RegisterFhirHooksTask.java
index 6b365f34e7..6f8ff2e286 100644
--- a/src/main/java/org/openelisglobal/config/task/RegisterFhirHooksTask.java
+++ b/src/main/java/org/openelisglobal/config/task/RegisterFhirHooksTask.java
@@ -9,7 +9,7 @@
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.hl7.fhir.r4.model.Bundle;
import org.hl7.fhir.r4.model.Bundle.BundleEntryComponent;
diff --git a/src/main/java/org/openelisglobal/dataexchange/MalariaSurveilance/MalariaSurveilanceJob.java b/src/main/java/org/openelisglobal/dataexchange/MalariaSurveilance/MalariaSurveilanceJob.java
index b4c0d70176..e52aa0bb25 100644
--- a/src/main/java/org/openelisglobal/dataexchange/MalariaSurveilance/MalariaSurveilanceJob.java
+++ b/src/main/java/org/openelisglobal/dataexchange/MalariaSurveilance/MalariaSurveilanceJob.java
@@ -21,7 +21,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/AggregateReportJob.java b/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/AggregateReportJob.java
index 7c1204a1c7..dc495ae8ef 100644
--- a/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/AggregateReportJob.java
+++ b/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/AggregateReportJob.java
@@ -15,7 +15,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.util.ConfigurationProperties;
diff --git a/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/IndicatorAggregationReportingServlet.java b/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/IndicatorAggregationReportingServlet.java
index ee12363589..5e1ca60bbf 100644
--- a/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/IndicatorAggregationReportingServlet.java
+++ b/src/main/java/org/openelisglobal/dataexchange/aggregatereporting/IndicatorAggregationReportingServlet.java
@@ -19,11 +19,11 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import javax.servlet.ServletException;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
diff --git a/src/main/java/org/openelisglobal/dataexchange/common/ReportTransmission.java b/src/main/java/org/openelisglobal/dataexchange/common/ReportTransmission.java
index b36a754b8d..9bebdc09b0 100644
--- a/src/main/java/org/openelisglobal/dataexchange/common/ReportTransmission.java
+++ b/src/main/java/org/openelisglobal/dataexchange/common/ReportTransmission.java
@@ -22,7 +22,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.exolab.castor.mapping.Mapping;
import org.exolab.castor.mapping.MappingException;
import org.exolab.castor.xml.MarshalException;
diff --git a/src/main/java/org/openelisglobal/dataexchange/connectionTest/ConnectionTest.java b/src/main/java/org/openelisglobal/dataexchange/connectionTest/ConnectionTest.java
index 4ebd7cdedf..7a8f998570 100644
--- a/src/main/java/org/openelisglobal/dataexchange/connectionTest/ConnectionTest.java
+++ b/src/main/java/org/openelisglobal/dataexchange/connectionTest/ConnectionTest.java
@@ -14,7 +14,7 @@
package org.openelisglobal.dataexchange.connectionTest;
import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.dataexchange.common.ITransmissionResponseHandler;
import org.openelisglobal.dataexchange.common.ReportTransmission;
import org.openelisglobal.dataexchange.common.ReportTransmission.HTTP_TYPE;
diff --git a/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirPersistanceServiceImpl.java b/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirPersistanceServiceImpl.java
index 9cfcc682d0..cb063f4ee9 100644
--- a/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirPersistanceServiceImpl.java
+++ b/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirPersistanceServiceImpl.java
@@ -9,7 +9,7 @@
import java.util.Map;
import java.util.Optional;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.hl7.fhir.instance.model.api.IBaseBundle;
import org.hl7.fhir.r4.model.Bundle;
import org.hl7.fhir.r4.model.Bundle.BundleEntryComponent;
diff --git a/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirTransformServiceImpl.java b/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirTransformServiceImpl.java
index d3cbbd662a..c442c1259f 100644
--- a/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirTransformServiceImpl.java
+++ b/src/main/java/org/openelisglobal/dataexchange/fhir/service/FhirTransformServiceImpl.java
@@ -19,7 +19,7 @@
import java.util.Set;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.lang3.ObjectUtils;
import org.hl7.fhir.r4.model.Address;
import org.hl7.fhir.r4.model.Annotation;
diff --git a/src/main/java/org/openelisglobal/dataexchange/malariareporting/MalariaReportingTransfer.java b/src/main/java/org/openelisglobal/dataexchange/malariareporting/MalariaReportingTransfer.java
index e840efc28f..b0e26df383 100644
--- a/src/main/java/org/openelisglobal/dataexchange/malariareporting/MalariaReportingTransfer.java
+++ b/src/main/java/org/openelisglobal/dataexchange/malariareporting/MalariaReportingTransfer.java
@@ -16,7 +16,7 @@
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.util.DateUtil;
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/action/DBOrderPersister.java b/src/main/java/org/openelisglobal/dataexchange/order/action/DBOrderPersister.java
index fa9c80b700..e93e60ee92 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/action/DBOrderPersister.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/action/DBOrderPersister.java
@@ -17,7 +17,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.PersonAddressService;
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/action/OrderRawServlet.java b/src/main/java/org/openelisglobal/dataexchange/order/action/OrderRawServlet.java
index 909c27026e..8a1d5b0fc5 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/action/OrderRawServlet.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/action/OrderRawServlet.java
@@ -15,11 +15,11 @@
import java.io.IOException;
import java.nio.charset.StandardCharsets;
-import javax.servlet.ServletException;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.log.LogEvent;
public class OrderRawServlet extends HttpServlet {
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/action/OrderServlet.java b/src/main/java/org/openelisglobal/dataexchange/order/action/OrderServlet.java
index 4ebf2011d2..5c534f5c21 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/action/OrderServlet.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/action/OrderServlet.java
@@ -28,8 +28,8 @@
import java.io.IOException;
import java.util.List;
import java.util.Map;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletException;
import org.openelisglobal.dataexchange.order.action.IOrderInterpreter.InterpreterResults;
import org.openelisglobal.dataexchange.order.action.OrderWorker.OrderResult;
import org.openelisglobal.spring.util.SpringContext;
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/controller/ElectronicOrdersController.java b/src/main/java/org/openelisglobal/dataexchange/order/controller/ElectronicOrdersController.java
index 73cc152c6c..ee03407774 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/controller/ElectronicOrdersController.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/controller/ElectronicOrdersController.java
@@ -5,8 +5,8 @@
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hl7.fhir.r4.model.Coding;
import org.hl7.fhir.r4.model.Identifier;
import org.hl7.fhir.r4.model.ServiceRequest;
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/controller/RestElectronicOrdersController.java b/src/main/java/org/openelisglobal/dataexchange/order/controller/RestElectronicOrdersController.java
index dd49b77eca..ed9634bfba 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/controller/RestElectronicOrdersController.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/controller/RestElectronicOrdersController.java
@@ -5,8 +5,8 @@
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hl7.fhir.r4.model.Coding;
import org.hl7.fhir.r4.model.Identifier;
import org.hl7.fhir.r4.model.ServiceRequest;
diff --git a/src/main/java/org/openelisglobal/dataexchange/order/controller/StudyElectronicOrdersController.java b/src/main/java/org/openelisglobal/dataexchange/order/controller/StudyElectronicOrdersController.java
index f34cde90b0..7ad4a4b453 100644
--- a/src/main/java/org/openelisglobal/dataexchange/order/controller/StudyElectronicOrdersController.java
+++ b/src/main/java/org/openelisglobal/dataexchange/order/controller/StudyElectronicOrdersController.java
@@ -6,8 +6,8 @@
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.hl7.fhir.r4.model.Bundle;
diff --git a/src/main/java/org/openelisglobal/dataexchange/resultreporting/ResultReportingTransfer.java b/src/main/java/org/openelisglobal/dataexchange/resultreporting/ResultReportingTransfer.java
index 78c759de79..11a6eca164 100644
--- a/src/main/java/org/openelisglobal/dataexchange/resultreporting/ResultReportingTransfer.java
+++ b/src/main/java/org/openelisglobal/dataexchange/resultreporting/ResultReportingTransfer.java
@@ -16,7 +16,7 @@
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/dataexchange/resultreporting/beans/ReportingConfiguration.java b/src/main/java/org/openelisglobal/dataexchange/resultreporting/beans/ReportingConfiguration.java
index 3ddd15e114..70e3f923d8 100644
--- a/src/main/java/org/openelisglobal/dataexchange/resultreporting/beans/ReportingConfiguration.java
+++ b/src/main/java/org/openelisglobal/dataexchange/resultreporting/beans/ReportingConfiguration.java
@@ -14,7 +14,7 @@
package org.openelisglobal.dataexchange.resultreporting.beans;
import java.io.Serializable;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.hibernate.validator.constraints.URL;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.resultreporting.form.ResultReportingConfigurationForm;
diff --git a/src/main/java/org/openelisglobal/datasubmission/controller/DataSubmissionController.java b/src/main/java/org/openelisglobal/datasubmission/controller/DataSubmissionController.java
index eb55cc9ee8..4411d2286c 100644
--- a/src/main/java/org/openelisglobal/datasubmission/controller/DataSubmissionController.java
+++ b/src/main/java/org/openelisglobal/datasubmission/controller/DataSubmissionController.java
@@ -3,7 +3,7 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.json.simple.parser.ParseException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.util.ConfigurationProperties;
diff --git a/src/main/java/org/openelisglobal/datasubmission/form/DataSubmissionForm.java b/src/main/java/org/openelisglobal/datasubmission/form/DataSubmissionForm.java
index 53b4bab8a5..a8f37b43c4 100644
--- a/src/main/java/org/openelisglobal/datasubmission/form/DataSubmissionForm.java
+++ b/src/main/java/org/openelisglobal/datasubmission/form/DataSubmissionForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.datasubmission.form;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.hibernate.validator.constraints.Range;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.DateUtil;
diff --git a/src/main/java/org/openelisglobal/datasubmission/valueholder/DataIndicator.java b/src/main/java/org/openelisglobal/datasubmission/valueholder/DataIndicator.java
index 6e4abc21dc..d5d57edea1 100644
--- a/src/main/java/org/openelisglobal/datasubmission/valueholder/DataIndicator.java
+++ b/src/main/java/org/openelisglobal/datasubmission/valueholder/DataIndicator.java
@@ -1,7 +1,7 @@
package org.openelisglobal.datasubmission.valueholder;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/datasubmission/valueholder/DataValue.java b/src/main/java/org/openelisglobal/datasubmission/valueholder/DataValue.java
index 01f0120bb0..05479ff04f 100644
--- a/src/main/java/org/openelisglobal/datasubmission/valueholder/DataValue.java
+++ b/src/main/java/org/openelisglobal/datasubmission/valueholder/DataValue.java
@@ -1,7 +1,7 @@
package org.openelisglobal.datasubmission.valueholder;
-import javax.validation.constraints.Pattern;
-import javax.validation.groups.Default;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.groups.Default;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.datasubmission.form.DataSubmissionForm;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/dev/controller/webtestInfoController.java b/src/main/java/org/openelisglobal/dev/controller/webtestInfoController.java
index facf884b70..74c480270e 100644
--- a/src/main/java/org/openelisglobal/dev/controller/webtestInfoController.java
+++ b/src/main/java/org/openelisglobal/dev/controller/webtestInfoController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.dev.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.dev.form.WebTestInfoForm;
import org.openelisglobal.login.service.LoginUserService;
diff --git a/src/main/java/org/openelisglobal/dictionary/controller/DictionaryController.java b/src/main/java/org/openelisglobal/dictionary/controller/DictionaryController.java
index 576320d1b4..61c67ad649 100644
--- a/src/main/java/org/openelisglobal/dictionary/controller/DictionaryController.java
+++ b/src/main/java/org/openelisglobal/dictionary/controller/DictionaryController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.beanutils.PropertyUtils;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
diff --git a/src/main/java/org/openelisglobal/dictionary/controller/DictionaryMenuController.java b/src/main/java/org/openelisglobal/dictionary/controller/DictionaryMenuController.java
index 144ee4e4d9..dab4055fc0 100644
--- a/src/main/java/org/openelisglobal/dictionary/controller/DictionaryMenuController.java
+++ b/src/main/java/org/openelisglobal/dictionary/controller/DictionaryMenuController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryMenuRestController.java b/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryMenuRestController.java
index 69a2ca7b7e..393d05903b 100644
--- a/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryMenuRestController.java
+++ b/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryMenuRestController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryRestController.java b/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryRestController.java
index 563cc8ba5a..6a0d849fe7 100644
--- a/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryRestController.java
+++ b/src/main/java/org/openelisglobal/dictionary/controller/rest/DictionaryRestController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.common.constants.Constants;
diff --git a/src/main/java/org/openelisglobal/dictionary/daoimpl/DictionaryDAOImpl.java b/src/main/java/org/openelisglobal/dictionary/daoimpl/DictionaryDAOImpl.java
index 91f57117df..101d9ea205 100644
--- a/src/main/java/org/openelisglobal/dictionary/daoimpl/DictionaryDAOImpl.java
+++ b/src/main/java/org/openelisglobal/dictionary/daoimpl/DictionaryDAOImpl.java
@@ -30,8 +30,6 @@
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.dictionary.dao.DictionaryDAO;
import org.openelisglobal.dictionary.valueholder.Dictionary;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
@@ -42,8 +40,6 @@
@Transactional
public class DictionaryDAOImpl extends BaseDAOImpl implements DictionaryDAO {
- private static final Logger log = LoggerFactory.getLogger(DictionaryDAOImpl.class);
-
public DictionaryDAOImpl() {
super(Dictionary.class);
}
diff --git a/src/main/java/org/openelisglobal/dictionary/form/DictionaryForm.java b/src/main/java/org/openelisglobal/dictionary/form/DictionaryForm.java
index 8f14a53564..565de55f14 100644
--- a/src/main/java/org/openelisglobal/dictionary/form/DictionaryForm.java
+++ b/src/main/java/org/openelisglobal/dictionary/form/DictionaryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.dictionary.form;
import java.util.Collection;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.hibernate.validator.constraints.Length;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/dictionary/form/DictionaryMenuForm.java b/src/main/java/org/openelisglobal/dictionary/form/DictionaryMenuForm.java
index 50dcdf4acf..d170d65c53 100644
--- a/src/main/java/org/openelisglobal/dictionary/form/DictionaryMenuForm.java
+++ b/src/main/java/org/openelisglobal/dictionary/form/DictionaryMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.dictionary.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.dictionary.valueholder.Dictionary;
diff --git a/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionController.java b/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionController.java
index 619411f607..6076a44588 100644
--- a/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionController.java
+++ b/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionController.java
@@ -12,7 +12,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.util.ConfigurationProperties;
diff --git a/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionMenuController.java b/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionMenuController.java
index 46b09b4888..0e2c278e5d 100644
--- a/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionMenuController.java
+++ b/src/main/java/org/openelisglobal/externalconnections/controller/ExternalConnectionMenuController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.form.AdminOptionMenuForm;
diff --git a/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionForm.java b/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionForm.java
index b7831fc7a6..e01f5c79e7 100644
--- a/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionForm.java
+++ b/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.externalconnections.form;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.externalconnections.valueholder.BasicAuthenticationData;
import org.openelisglobal.externalconnections.valueholder.CertificateAuthenticationData;
diff --git a/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionMenuForm.java b/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionMenuForm.java
index 51302a0b83..74d93b3779 100644
--- a/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionMenuForm.java
+++ b/src/main/java/org/openelisglobal/externalconnections/form/ExternalConnectionMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.externalconnections.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.externalconnections.valueholder.ExternalConnection;
diff --git a/src/main/java/org/openelisglobal/externalconnections/valueholder/BasicAuthenticationData.java b/src/main/java/org/openelisglobal/externalconnections/valueholder/BasicAuthenticationData.java
index 9eb36387bd..65d7caf4b3 100644
--- a/src/main/java/org/openelisglobal/externalconnections/valueholder/BasicAuthenticationData.java
+++ b/src/main/java/org/openelisglobal/externalconnections/valueholder/BasicAuthenticationData.java
@@ -1,10 +1,10 @@
package org.openelisglobal.externalconnections.valueholder;
import java.util.Base64;
-import javax.persistence.Column;
-import javax.persistence.Convert;
-import javax.persistence.Entity;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Convert;
+import jakarta.persistence.Entity;
+import jakarta.persistence.Table;
import org.openelisglobal.externalconnections.valueholder.ExternalConnection.AuthType;
import org.openelisglobal.security.converter.EncryptionConverter;
diff --git a/src/main/java/org/openelisglobal/externalconnections/valueholder/CertificateAuthenticationData.java b/src/main/java/org/openelisglobal/externalconnections/valueholder/CertificateAuthenticationData.java
index b356931163..bab00a7d0c 100644
--- a/src/main/java/org/openelisglobal/externalconnections/valueholder/CertificateAuthenticationData.java
+++ b/src/main/java/org/openelisglobal/externalconnections/valueholder/CertificateAuthenticationData.java
@@ -1,8 +1,8 @@
package org.openelisglobal.externalconnections.valueholder;
-import javax.persistence.Entity;
-import javax.persistence.Table;
-import javax.persistence.Transient;
+import jakarta.persistence.Entity;
+import jakarta.persistence.Table;
+import jakarta.persistence.Transient;
import org.openelisglobal.externalconnections.valueholder.ExternalConnection.AuthType;
import org.springframework.web.multipart.MultipartFile;
diff --git a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnection.java b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnection.java
index 1111356332..f818881921 100644
--- a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnection.java
+++ b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnection.java
@@ -1,20 +1,20 @@
package org.openelisglobal.externalconnections.valueholder;
import java.net.URI;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Convert;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Convert;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.hibernate.converter.URIConverter;
import org.openelisglobal.internationalization.MessageUtil;
diff --git a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionAuthenticationData.java b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionAuthenticationData.java
index 92d3aa1807..3ce283cdc7 100644
--- a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionAuthenticationData.java
+++ b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionAuthenticationData.java
@@ -1,13 +1,13 @@
package org.openelisglobal.externalconnections.valueholder;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.MappedSuperclass;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.validation.Valid;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.MappedSuperclass;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.validation.Valid;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.externalconnections.valueholder.ExternalConnection.AuthType;
diff --git a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionContact.java b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionContact.java
index f44645c383..cd30a1b3f0 100644
--- a/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionContact.java
+++ b/src/main/java/org/openelisglobal/externalconnections/valueholder/ExternalConnectionContact.java
@@ -1,16 +1,16 @@
package org.openelisglobal.externalconnections.valueholder;
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.person.valueholder.Person;
diff --git a/src/main/java/org/openelisglobal/gender/valueholder/Gender.java b/src/main/java/org/openelisglobal/gender/valueholder/Gender.java
index a546ebd4ac..1898516378 100644
--- a/src/main/java/org/openelisglobal/gender/valueholder/Gender.java
+++ b/src/main/java/org/openelisglobal/gender/valueholder/Gender.java
@@ -13,14 +13,14 @@
*/
package org.openelisglobal.gender.valueholder;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.constraints.Size;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.constraints.Size;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/hibernate/converter/StringToIntegerConverter.java b/src/main/java/org/openelisglobal/hibernate/converter/StringToIntegerConverter.java
index c9ce029ba9..8c8c8e1624 100644
--- a/src/main/java/org/openelisglobal/hibernate/converter/StringToIntegerConverter.java
+++ b/src/main/java/org/openelisglobal/hibernate/converter/StringToIntegerConverter.java
@@ -1,7 +1,7 @@
package org.openelisglobal.hibernate.converter;
-import javax.persistence.AttributeConverter;
-import javax.persistence.Converter;
+import jakarta.persistence.AttributeConverter;
+import jakarta.persistence.Converter;
@Converter(autoApply = false)
public class StringToIntegerConverter implements AttributeConverter {
diff --git a/src/main/java/org/openelisglobal/hibernate/converter/URIConverter.java b/src/main/java/org/openelisglobal/hibernate/converter/URIConverter.java
index c75cebf82b..176c7e6657 100644
--- a/src/main/java/org/openelisglobal/hibernate/converter/URIConverter.java
+++ b/src/main/java/org/openelisglobal/hibernate/converter/URIConverter.java
@@ -2,8 +2,8 @@
import java.net.URI;
import java.net.URISyntaxException;
-import javax.persistence.AttributeConverter;
-import javax.persistence.Converter;
+import jakarta.persistence.AttributeConverter;
+import jakarta.persistence.Converter;
import org.openelisglobal.common.log.LogEvent;
@Converter
diff --git a/src/main/java/org/openelisglobal/hibernate/search/massindexer/MassIndexerService.java b/src/main/java/org/openelisglobal/hibernate/search/massindexer/MassIndexerService.java
index 6148139cfa..bbc485ee4a 100644
--- a/src/main/java/org/openelisglobal/hibernate/search/massindexer/MassIndexerService.java
+++ b/src/main/java/org/openelisglobal/hibernate/search/massindexer/MassIndexerService.java
@@ -1,8 +1,8 @@
package org.openelisglobal.hibernate.search.massindexer;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
-import javax.transaction.Transactional;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
+import jakarta.transaction.Transactional;
import org.hibernate.search.mapper.orm.Search;
import org.hibernate.search.mapper.orm.massindexing.MassIndexer;
import org.hibernate.search.mapper.orm.session.SearchSession;
diff --git a/src/main/java/org/openelisglobal/home/controller/HomeController.java b/src/main/java/org/openelisglobal/home/controller/HomeController.java
index 7f84f9070d..3930383fab 100644
--- a/src/main/java/org/openelisglobal/home/controller/HomeController.java
+++ b/src/main/java/org/openelisglobal/home/controller/HomeController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.home.controller;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.home.form.HomeForm;
import org.springframework.stereotype.Controller;
diff --git a/src/main/java/org/openelisglobal/image/service/ImageServiceImpl.java b/src/main/java/org/openelisglobal/image/service/ImageServiceImpl.java
index 95d2b1145a..191ab2d83e 100644
--- a/src/main/java/org/openelisglobal/image/service/ImageServiceImpl.java
+++ b/src/main/java/org/openelisglobal/image/service/ImageServiceImpl.java
@@ -2,8 +2,8 @@
import java.io.File;
import java.util.Optional;
-import javax.annotation.PostConstruct;
-import javax.servlet.ServletContext;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.ServletContext;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/interceptor/CommonPageAttributesInterceptor.java b/src/main/java/org/openelisglobal/interceptor/CommonPageAttributesInterceptor.java
index 8929275a9b..1b9a415a75 100644
--- a/src/main/java/org/openelisglobal/interceptor/CommonPageAttributesInterceptor.java
+++ b/src/main/java/org/openelisglobal/interceptor/CommonPageAttributesInterceptor.java
@@ -1,7 +1,7 @@
package org.openelisglobal.interceptor;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.form.BaseForm;
diff --git a/src/main/java/org/openelisglobal/interceptor/ModuleAuthenticationInterceptor.java b/src/main/java/org/openelisglobal/interceptor/ModuleAuthenticationInterceptor.java
index 60bf205625..6475a86923 100644
--- a/src/main/java/org/openelisglobal/interceptor/ModuleAuthenticationInterceptor.java
+++ b/src/main/java/org/openelisglobal/interceptor/ModuleAuthenticationInterceptor.java
@@ -4,8 +4,8 @@
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.util.ConfigurationProperties;
@@ -20,12 +20,12 @@
import org.springframework.security.web.RedirectStrategy;
import org.springframework.stereotype.Component;
import org.springframework.validation.Errors;
+import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
-import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
@Component
@Qualifier(value = "ModuleAuthenticationInterceptor")
-public class ModuleAuthenticationInterceptor extends HandlerInterceptorAdapter {
+public class ModuleAuthenticationInterceptor implements HandlerInterceptor {
private static final boolean USE_PARAMETERS = true;
diff --git a/src/main/java/org/openelisglobal/interceptor/UrlErrorsInterceptor.java b/src/main/java/org/openelisglobal/interceptor/UrlErrorsInterceptor.java
index a20a933ad8..f8fc7ce0f4 100644
--- a/src/main/java/org/openelisglobal/interceptor/UrlErrorsInterceptor.java
+++ b/src/main/java/org/openelisglobal/interceptor/UrlErrorsInterceptor.java
@@ -2,8 +2,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.validator.BaseErrors;
import org.openelisglobal.internationalization.MessageUtil;
diff --git a/src/main/java/org/openelisglobal/internationalization/GlobalLocaleResolver.java b/src/main/java/org/openelisglobal/internationalization/GlobalLocaleResolver.java
index a32014a50c..417a435b16 100644
--- a/src/main/java/org/openelisglobal/internationalization/GlobalLocaleResolver.java
+++ b/src/main/java/org/openelisglobal/internationalization/GlobalLocaleResolver.java
@@ -4,8 +4,8 @@
import java.util.List;
import java.util.Locale;
import java.util.TimeZone;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.util.ConfigurationListener;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
diff --git a/src/main/java/org/openelisglobal/inventory/controller/InventoryController.java b/src/main/java/org/openelisglobal/inventory/controller/InventoryController.java
index 67c8390121..0e32764f06 100644
--- a/src/main/java/org/openelisglobal/inventory/controller/InventoryController.java
+++ b/src/main/java/org/openelisglobal/inventory/controller/InventoryController.java
@@ -3,7 +3,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
diff --git a/src/main/java/org/openelisglobal/inventory/form/InventoryForm.java b/src/main/java/org/openelisglobal/inventory/form/InventoryForm.java
index ccaaa7c196..3238431d91 100644
--- a/src/main/java/org/openelisglobal/inventory/form/InventoryForm.java
+++ b/src/main/java/org/openelisglobal/inventory/form/InventoryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.inventory.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/inventory/form/InventoryKitItem.java b/src/main/java/org/openelisglobal/inventory/form/InventoryKitItem.java
index 8922ac9da6..56a055b04b 100644
--- a/src/main/java/org/openelisglobal/inventory/form/InventoryKitItem.java
+++ b/src/main/java/org/openelisglobal/inventory/form/InventoryKitItem.java
@@ -1,9 +1,9 @@
package org.openelisglobal.inventory.form;
import java.io.Serializable;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
-import javax.validation.groups.Default;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.groups.Default;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/login/bean/UserSession.java b/src/main/java/org/openelisglobal/login/bean/UserSession.java
index bc52f29aec..1e90d958c2 100644
--- a/src/main/java/org/openelisglobal/login/bean/UserSession.java
+++ b/src/main/java/org/openelisglobal/login/bean/UserSession.java
@@ -6,7 +6,12 @@
public class UserSession {
+ public enum LoginMethod {
+ FORM, SAML, OAUTH, CERT, NONE
+ }
+
private Boolean authenticated;
+ private LoginMethod loginMethod;
private String sessionId;
private String userId;
private String loginName;
@@ -25,6 +30,14 @@ public void setAuthenticated(Boolean authenticated) {
this.authenticated = authenticated;
}
+ public LoginMethod getLoginMethod() {
+ return loginMethod;
+ }
+
+ public void setLoginMethod(LoginMethod loginMethod) {
+ this.loginMethod = loginMethod;
+ }
+
public String getUserId() {
return userId;
}
diff --git a/src/main/java/org/openelisglobal/login/controller/ChangePasswordLoginController.java b/src/main/java/org/openelisglobal/login/controller/ChangePasswordLoginController.java
index 5b73f102a6..195a26fe11 100644
--- a/src/main/java/org/openelisglobal/login/controller/ChangePasswordLoginController.java
+++ b/src/main/java/org/openelisglobal/login/controller/ChangePasswordLoginController.java
@@ -2,8 +2,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.Optional;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/login/controller/LoginPageController.java b/src/main/java/org/openelisglobal/login/controller/LoginPageController.java
index 804b52c271..dba0ceb952 100644
--- a/src/main/java/org/openelisglobal/login/controller/LoginPageController.java
+++ b/src/main/java/org/openelisglobal/login/controller/LoginPageController.java
@@ -9,7 +9,7 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
@@ -17,6 +17,7 @@
import org.openelisglobal.common.util.ConfigurationProperties.Property;
import org.openelisglobal.localization.service.LocalizationService;
import org.openelisglobal.login.bean.UserSession;
+import org.openelisglobal.login.bean.UserSession.LoginMethod;
import org.openelisglobal.login.form.LoginForm;
import org.openelisglobal.login.valueholder.UserSessionData;
import org.openelisglobal.role.service.RoleService;
@@ -135,6 +136,7 @@ public UserSession getSesssionDetails(HttpServletRequest request, CsrfToken toke
session.setSessionId(request.getSession().getId());
if (authenticated) {
SystemUser user = systemUserService.get(getSysUserId(request));
+ setLoginMethod(request, session);
session.setUserId(user.getId());
session.setLoginName(user.getLoginName());
session.setFirstName(user.getFirstName());
@@ -154,6 +156,16 @@ public UserSession getSesssionDetails(HttpServletRequest request, CsrfToken toke
return session;
}
+ private void setLoginMethod(HttpServletRequest request, UserSession session) {
+ if (Boolean.TRUE.equals(request.getSession().getAttribute("samlSession"))) {
+ session.setLoginMethod(LoginMethod.SAML);
+ } else if (Boolean.TRUE.equals(request.getSession().getAttribute("oauthSession"))) {
+ session.setLoginMethod(LoginMethod.OAUTH);
+ } else {
+ session.setLoginMethod(LoginMethod.FORM);
+ }
+ }
+
private void setLabunitRolesForExistingUser(HttpServletRequest request, UserSession session) {
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
diff --git a/src/main/java/org/openelisglobal/login/dao/UserModuleService.java b/src/main/java/org/openelisglobal/login/dao/UserModuleService.java
index 5ae90c3f7f..2cab2d4d0e 100644
--- a/src/main/java/org/openelisglobal/login/dao/UserModuleService.java
+++ b/src/main/java/org/openelisglobal/login/dao/UserModuleService.java
@@ -13,7 +13,7 @@
*/
package org.openelisglobal.login.dao;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
/**
diff --git a/src/main/java/org/openelisglobal/login/daoimpl/UserModuleServiceImpl.java b/src/main/java/org/openelisglobal/login/daoimpl/UserModuleServiceImpl.java
index fafc1812ad..19e3ce85cd 100644
--- a/src/main/java/org/openelisglobal/login/daoimpl/UserModuleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/login/daoimpl/UserModuleServiceImpl.java
@@ -16,7 +16,7 @@
package org.openelisglobal.login.daoimpl;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/login/form/ChangePasswordLoginForm.java b/src/main/java/org/openelisglobal/login/form/ChangePasswordLoginForm.java
index eb3082c5ab..0095534773 100644
--- a/src/main/java/org/openelisglobal/login/form/ChangePasswordLoginForm.java
+++ b/src/main/java/org/openelisglobal/login/form/ChangePasswordLoginForm.java
@@ -1,6 +1,6 @@
package org.openelisglobal.login.form;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.validation.annotations.Password;
import org.openelisglobal.validation.annotations.ValidName;
diff --git a/src/main/java/org/openelisglobal/login/form/LoginForm.java b/src/main/java/org/openelisglobal/login/form/LoginForm.java
index bb3837f260..a3b60e68c0 100644
--- a/src/main/java/org/openelisglobal/login/form/LoginForm.java
+++ b/src/main/java/org/openelisglobal/login/form/LoginForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.login.form;
import java.util.Map;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.validation.annotations.ValidName;
import org.openelisglobal.validation.constraintvalidator.NameValidator.NameType;
diff --git a/src/main/java/org/openelisglobal/login/valueholder/LoginUser.java b/src/main/java/org/openelisglobal/login/valueholder/LoginUser.java
index fc531e0439..0243749a06 100644
--- a/src/main/java/org/openelisglobal/login/valueholder/LoginUser.java
+++ b/src/main/java/org/openelisglobal/login/valueholder/LoginUser.java
@@ -14,16 +14,16 @@
package org.openelisglobal.login.valueholder;
import java.sql.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.persistence.Transient;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Size;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.persistence.Transient;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Size;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
import org.openelisglobal.common.util.DateUtil;
diff --git a/src/main/java/org/openelisglobal/logo/controller/LogoUploadController.java b/src/main/java/org/openelisglobal/logo/controller/LogoUploadController.java
index c9bfbb8ca0..c4b25e6722 100644
--- a/src/main/java/org/openelisglobal/logo/controller/LogoUploadController.java
+++ b/src/main/java/org/openelisglobal/logo/controller/LogoUploadController.java
@@ -18,8 +18,8 @@
import java.io.IOException;
import java.io.InputStream;
import javax.imageio.ImageIO;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/logo/controller/rest/LogoUploadRestController.java b/src/main/java/org/openelisglobal/logo/controller/rest/LogoUploadRestController.java
index 26b4be4130..bb87911b31 100644
--- a/src/main/java/org/openelisglobal/logo/controller/rest/LogoUploadRestController.java
+++ b/src/main/java/org/openelisglobal/logo/controller/rest/LogoUploadRestController.java
@@ -18,8 +18,8 @@
import java.io.IOException;
import java.io.InputStream;
import javax.imageio.ImageIO;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/menu/controller/MasterListsPageController.java b/src/main/java/org/openelisglobal/menu/controller/MasterListsPageController.java
index 32faa8b6e7..247b9b0e52 100644
--- a/src/main/java/org/openelisglobal/menu/controller/MasterListsPageController.java
+++ b/src/main/java/org/openelisglobal/menu/controller/MasterListsPageController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.menu.controller;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.menu.form.AdminMenuForm;
import org.openelisglobal.menu.service.AdminMenuItemService;
diff --git a/src/main/java/org/openelisglobal/menu/service/AdminMenuItemServiceImpl.java b/src/main/java/org/openelisglobal/menu/service/AdminMenuItemServiceImpl.java
index 6f3ea3e895..71af9b45de 100644
--- a/src/main/java/org/openelisglobal/menu/service/AdminMenuItemServiceImpl.java
+++ b/src/main/java/org/openelisglobal/menu/service/AdminMenuItemServiceImpl.java
@@ -4,7 +4,7 @@
import java.util.Comparator;
import java.util.List;
import java.util.Locale;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.formfields.AdminFormFields;
import org.openelisglobal.common.formfields.AdminFormFields.Field;
import org.openelisglobal.common.util.ConfigurationListener;
diff --git a/src/main/java/org/openelisglobal/metricservice/action/MetricServicesServlet.java b/src/main/java/org/openelisglobal/metricservice/action/MetricServicesServlet.java
index 4d108ba9f8..22c2dd82cb 100644
--- a/src/main/java/org/openelisglobal/metricservice/action/MetricServicesServlet.java
+++ b/src/main/java/org/openelisglobal/metricservice/action/MetricServicesServlet.java
@@ -5,10 +5,10 @@
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryPoolMXBean;
import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
public class MetricServicesServlet extends HttpServlet {
diff --git a/src/main/java/org/openelisglobal/note/service/NoteServiceImpl.java b/src/main/java/org/openelisglobal/note/service/NoteServiceImpl.java
index 34e18d2882..2f5ef726a5 100644
--- a/src/main/java/org/openelisglobal/note/service/NoteServiceImpl.java
+++ b/src/main/java/org/openelisglobal/note/service/NoteServiceImpl.java
@@ -7,7 +7,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisServiceImpl;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigController.java b/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigController.java
index 2e810b0af8..66816bd5a4 100644
--- a/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigController.java
+++ b/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigController.java
@@ -1,8 +1,8 @@
package org.openelisglobal.notification.controller;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.notification.form.TestNotificationConfigForm;
diff --git a/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigMenuController.java b/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigMenuController.java
index b669ad14f5..c742f7ce53 100644
--- a/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigMenuController.java
+++ b/src/main/java/org/openelisglobal/notification/controller/TestNotificationConfigMenuController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigMenuRestController.java b/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigMenuRestController.java
index 2107db9e57..07fa8c0789 100644
--- a/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigMenuRestController.java
+++ b/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigMenuRestController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigRestController.java b/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigRestController.java
index 1c6fa6985b..78e6ee63a4 100644
--- a/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigRestController.java
+++ b/src/main/java/org/openelisglobal/notification/controller/rest/TestNotificationConfigRestController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.notification.controller.rest;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.notification.form.TestNotificationConfigForm;
diff --git a/src/main/java/org/openelisglobal/notification/form/TestNotificationConfigMenuForm.java b/src/main/java/org/openelisglobal/notification/form/TestNotificationConfigMenuForm.java
index 8e9a46ec8f..891554bffa 100644
--- a/src/main/java/org/openelisglobal/notification/form/TestNotificationConfigMenuForm.java
+++ b/src/main/java/org/openelisglobal/notification/form/TestNotificationConfigMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.notification.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.notification.valueholder.TestNotificationConfig;
diff --git a/src/main/java/org/openelisglobal/notification/service/TestNotificationServiceImpl.java b/src/main/java/org/openelisglobal/notification/service/TestNotificationServiceImpl.java
index ccb1117826..f02fe9240e 100644
--- a/src/main/java/org/openelisglobal/notification/service/TestNotificationServiceImpl.java
+++ b/src/main/java/org/openelisglobal/notification/service/TestNotificationServiceImpl.java
@@ -2,7 +2,7 @@
import java.util.List;
import java.util.Optional;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.util.ConfigurationProperties;
diff --git a/src/main/java/org/openelisglobal/notification/valueholder/AnalysisNotificationConfig.java b/src/main/java/org/openelisglobal/notification/valueholder/AnalysisNotificationConfig.java
index c3956d029e..79491546e6 100644
--- a/src/main/java/org/openelisglobal/notification/valueholder/AnalysisNotificationConfig.java
+++ b/src/main/java/org/openelisglobal/notification/valueholder/AnalysisNotificationConfig.java
@@ -4,20 +4,20 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.JoinTable;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Entity;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.JoinTable;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.notification.valueholder.NotificationConfigOption.NotificationMethod;
import org.openelisglobal.notification.valueholder.NotificationConfigOption.NotificationNature;
diff --git a/src/main/java/org/openelisglobal/notification/valueholder/NotificationConfigOption.java b/src/main/java/org/openelisglobal/notification/valueholder/NotificationConfigOption.java
index 46325ba977..e9665631a6 100644
--- a/src/main/java/org/openelisglobal/notification/valueholder/NotificationConfigOption.java
+++ b/src/main/java/org/openelisglobal/notification/valueholder/NotificationConfigOption.java
@@ -2,23 +2,23 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.List;
-import javax.persistence.CascadeType;
-import javax.persistence.CollectionTable;
-import javax.persistence.Column;
-import javax.persistence.ElementCollection;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.CollectionTable;
+import jakarta.persistence.Column;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/notification/valueholder/NotificationPayloadTemplate.java b/src/main/java/org/openelisglobal/notification/valueholder/NotificationPayloadTemplate.java
index 56a8d8dfb9..16eca8958b 100644
--- a/src/main/java/org/openelisglobal/notification/valueholder/NotificationPayloadTemplate.java
+++ b/src/main/java/org/openelisglobal/notification/valueholder/NotificationPayloadTemplate.java
@@ -1,14 +1,14 @@
package org.openelisglobal.notification.valueholder;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/notification/valueholder/TestNotificationConfig.java b/src/main/java/org/openelisglobal/notification/valueholder/TestNotificationConfig.java
index f17c8230a0..756ccdceff 100644
--- a/src/main/java/org/openelisglobal/notification/valueholder/TestNotificationConfig.java
+++ b/src/main/java/org/openelisglobal/notification/valueholder/TestNotificationConfig.java
@@ -4,20 +4,20 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.JoinTable;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Entity;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.JoinTable;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
import org.openelisglobal.notification.valueholder.NotificationConfigOption.NotificationMethod;
import org.openelisglobal.notification.valueholder.NotificationConfigOption.NotificationNature;
import org.openelisglobal.notification.valueholder.NotificationConfigOption.NotificationPersonType;
diff --git a/src/main/java/org/openelisglobal/notifications/dao/NotificationDAOImpl.java b/src/main/java/org/openelisglobal/notifications/dao/NotificationDAOImpl.java
index 96ffeea0da..d470711d20 100644
--- a/src/main/java/org/openelisglobal/notifications/dao/NotificationDAOImpl.java
+++ b/src/main/java/org/openelisglobal/notifications/dao/NotificationDAOImpl.java
@@ -2,9 +2,9 @@
import java.time.OffsetDateTime;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
+import jakarta.persistence.TypedQuery;
import org.openelisglobal.notifications.entity.Notification;
import org.openelisglobal.systemuser.valueholder.SystemUser;
import org.springframework.stereotype.Repository;
diff --git a/src/main/java/org/openelisglobal/notifications/dao/NotificationSubscriptionDAOImpl.java b/src/main/java/org/openelisglobal/notifications/dao/NotificationSubscriptionDAOImpl.java
index 9e630a8d6b..5270095848 100644
--- a/src/main/java/org/openelisglobal/notifications/dao/NotificationSubscriptionDAOImpl.java
+++ b/src/main/java/org/openelisglobal/notifications/dao/NotificationSubscriptionDAOImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.notifications.dao;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
import org.openelisglobal.notifications.entity.NotificationSubscriptions;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
diff --git a/src/main/java/org/openelisglobal/notifications/entity/Notification.java b/src/main/java/org/openelisglobal/notifications/entity/Notification.java
index 791a3bfc05..3885895567 100644
--- a/src/main/java/org/openelisglobal/notifications/entity/Notification.java
+++ b/src/main/java/org/openelisglobal/notifications/entity/Notification.java
@@ -1,7 +1,7 @@
package org.openelisglobal.notifications.entity;
import java.time.OffsetDateTime;
-import javax.persistence.*;
+import jakarta.persistence.*;
import org.openelisglobal.systemuser.valueholder.SystemUser;
@Entity
diff --git a/src/main/java/org/openelisglobal/notifications/entity/NotificationSubscriptions.java b/src/main/java/org/openelisglobal/notifications/entity/NotificationSubscriptions.java
index 13ecd873b8..f62eae70e2 100644
--- a/src/main/java/org/openelisglobal/notifications/entity/NotificationSubscriptions.java
+++ b/src/main/java/org/openelisglobal/notifications/entity/NotificationSubscriptions.java
@@ -1,6 +1,6 @@
package org.openelisglobal.notifications.entity;
-import javax.persistence.*;
+import jakarta.persistence.*;
import org.openelisglobal.systemuser.valueholder.SystemUser;
@Entity
diff --git a/src/main/java/org/openelisglobal/notifications/rest/NotificationRestController.java b/src/main/java/org/openelisglobal/notifications/rest/NotificationRestController.java
index 01c1fef210..8d4a4ebb3f 100644
--- a/src/main/java/org/openelisglobal/notifications/rest/NotificationRestController.java
+++ b/src/main/java/org/openelisglobal/notifications/rest/NotificationRestController.java
@@ -6,7 +6,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import nl.martijndwars.webpush.PushService;
import org.apache.http.HttpResponse;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
diff --git a/src/main/java/org/openelisglobal/organization/controller/OrganizationController.java b/src/main/java/org/openelisglobal/organization/controller/OrganizationController.java
index 21247a6fd2..2ecf05a6d1 100644
--- a/src/main/java/org/openelisglobal/organization/controller/OrganizationController.java
+++ b/src/main/java/org/openelisglobal/organization/controller/OrganizationController.java
@@ -5,10 +5,10 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.OrganizationAddressService;
import org.openelisglobal.address.valueholder.AddressPart;
diff --git a/src/main/java/org/openelisglobal/organization/controller/OrganizationMenuController.java b/src/main/java/org/openelisglobal/organization/controller/OrganizationMenuController.java
index 58d5e0a7f8..d7053627e1 100644
--- a/src/main/java/org/openelisglobal/organization/controller/OrganizationMenuController.java
+++ b/src/main/java/org/openelisglobal/organization/controller/OrganizationMenuController.java
@@ -3,9 +3,9 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationMenuRestController.java b/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationMenuRestController.java
index a361f40a76..612b77320b 100644
--- a/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationMenuRestController.java
+++ b/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationMenuRestController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.form.AdminOptionMenuForm;
diff --git a/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationRestController.java b/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationRestController.java
index de3d18b721..1a9d8ec847 100644
--- a/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationRestController.java
+++ b/src/main/java/org/openelisglobal/organization/controller/rest/OrganizationRestController.java
@@ -6,10 +6,10 @@
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.OrganizationAddressService;
import org.openelisglobal.address.valueholder.AddressPart;
diff --git a/src/main/java/org/openelisglobal/organization/daoimpl/OrganizationOrganizationTypeDAOImpl.java b/src/main/java/org/openelisglobal/organization/daoimpl/OrganizationOrganizationTypeDAOImpl.java
index 477b7abca5..847c22ccfb 100644
--- a/src/main/java/org/openelisglobal/organization/daoimpl/OrganizationOrganizationTypeDAOImpl.java
+++ b/src/main/java/org/openelisglobal/organization/daoimpl/OrganizationOrganizationTypeDAOImpl.java
@@ -16,8 +16,8 @@
package org.openelisglobal.organization.daoimpl;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
import org.hibernate.Session;
import org.hibernate.query.NativeQuery;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/organization/form/OrganizationForm.java b/src/main/java/org/openelisglobal/organization/form/OrganizationForm.java
index 2beebbc018..1e6c714ee9 100644
--- a/src/main/java/org/openelisglobal/organization/form/OrganizationForm.java
+++ b/src/main/java/org/openelisglobal/organization/form/OrganizationForm.java
@@ -3,9 +3,9 @@
import java.sql.Timestamp;
import java.util.Collection;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.hibernate.validator.constraints.URL;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.formfields.FormFields.Field;
diff --git a/src/main/java/org/openelisglobal/organization/form/OrganizationMenuForm.java b/src/main/java/org/openelisglobal/organization/form/OrganizationMenuForm.java
index a820ba8d10..fd401ea57f 100644
--- a/src/main/java/org/openelisglobal/organization/form/OrganizationMenuForm.java
+++ b/src/main/java/org/openelisglobal/organization/form/OrganizationMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.organization.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.organization.valueholder.Organization;
diff --git a/src/main/java/org/openelisglobal/organization/valueholder/Organization.java b/src/main/java/org/openelisglobal/organization/valueholder/Organization.java
index 2dc9770474..f47fd43ccc 100644
--- a/src/main/java/org/openelisglobal/organization/valueholder/Organization.java
+++ b/src/main/java/org/openelisglobal/organization/valueholder/Organization.java
@@ -17,7 +17,7 @@
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.hibernate.validator.constraints.URL;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.common.valueholder.EnumValueItemImpl;
diff --git a/src/main/java/org/openelisglobal/patient/action/IPatientUpdate.java b/src/main/java/org/openelisglobal/patient/action/IPatientUpdate.java
index e5612ed5a4..46fbee9e17 100644
--- a/src/main/java/org/openelisglobal/patient/action/IPatientUpdate.java
+++ b/src/main/java/org/openelisglobal/patient/action/IPatientUpdate.java
@@ -16,7 +16,7 @@
package org.openelisglobal.patient.action;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.patient.action.bean.PatientManagementInfo;
import org.openelisglobal.sample.form.SamplePatientEntryForm;
diff --git a/src/main/java/org/openelisglobal/patient/action/bean/PatientClinicalInfo.java b/src/main/java/org/openelisglobal/patient/action/bean/PatientClinicalInfo.java
index 1694e71410..91207db30d 100644
--- a/src/main/java/org/openelisglobal/patient/action/bean/PatientClinicalInfo.java
+++ b/src/main/java/org/openelisglobal/patient/action/bean/PatientClinicalInfo.java
@@ -16,7 +16,7 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.sample.form.SamplePatientEntryForm.SamplePatientEntryBatch;
diff --git a/src/main/java/org/openelisglobal/patient/action/bean/PatientManagementInfo.java b/src/main/java/org/openelisglobal/patient/action/bean/PatientManagementInfo.java
index fc2228d9d6..0ea6887a18 100644
--- a/src/main/java/org/openelisglobal/patient/action/bean/PatientManagementInfo.java
+++ b/src/main/java/org/openelisglobal/patient/action/bean/PatientManagementInfo.java
@@ -16,11 +16,11 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.constraints.Size;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.formfields.FormFields.Field;
import org.openelisglobal.common.services.DisplayListService;
diff --git a/src/main/java/org/openelisglobal/patient/controller/BasePatientEntryByProject.java b/src/main/java/org/openelisglobal/patient/controller/BasePatientEntryByProject.java
index 3a093f8276..146dc419b5 100644
--- a/src/main/java/org/openelisglobal/patient/controller/BasePatientEntryByProject.java
+++ b/src/main/java/org/openelisglobal/patient/controller/BasePatientEntryByProject.java
@@ -6,7 +6,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.tuple.Pair;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSException;
diff --git a/src/main/java/org/openelisglobal/patient/controller/PatientEditByProjectController.java b/src/main/java/org/openelisglobal/patient/controller/PatientEditByProjectController.java
index 69a797e67e..18e0085a9c 100644
--- a/src/main/java/org/openelisglobal/patient/controller/PatientEditByProjectController.java
+++ b/src/main/java/org/openelisglobal/patient/controller/PatientEditByProjectController.java
@@ -1,8 +1,8 @@
package org.openelisglobal.patient.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.util.DateUtil;
import org.openelisglobal.patient.action.bean.PatientSearch;
diff --git a/src/main/java/org/openelisglobal/patient/controller/PatientEntryByProjectController.java b/src/main/java/org/openelisglobal/patient/controller/PatientEntryByProjectController.java
index 62c65c65d4..465e3061bc 100644
--- a/src/main/java/org/openelisglobal/patient/controller/PatientEntryByProjectController.java
+++ b/src/main/java/org/openelisglobal/patient/controller/PatientEntryByProjectController.java
@@ -2,8 +2,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.Date;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.util.DateUtil;
import org.openelisglobal.patient.form.PatientEntryByProjectForm;
import org.openelisglobal.patient.saving.Accessioner;
diff --git a/src/main/java/org/openelisglobal/patient/controller/PatientManagementController.java b/src/main/java/org/openelisglobal/patient/controller/PatientManagementController.java
index e8f0999133..5f122a97de 100644
--- a/src/main/java/org/openelisglobal/patient/controller/PatientManagementController.java
+++ b/src/main/java/org/openelisglobal/patient/controller/PatientManagementController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.sql.Timestamp;
import java.util.ArrayList;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.beanutils.PropertyUtils;
import org.hibernate.StaleObjectStateException;
import org.openelisglobal.address.service.AddressPartService;
diff --git a/src/main/java/org/openelisglobal/patient/controller/rest/PatientManagementRestController.java b/src/main/java/org/openelisglobal/patient/controller/rest/PatientManagementRestController.java
index d7f966b646..e0c31009bb 100644
--- a/src/main/java/org/openelisglobal/patient/controller/rest/PatientManagementRestController.java
+++ b/src/main/java/org/openelisglobal/patient/controller/rest/PatientManagementRestController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.sql.Timestamp;
import java.util.ArrayList;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang3.StringUtils;
import org.hibernate.StaleObjectStateException;
diff --git a/src/main/java/org/openelisglobal/patient/form/PatientEntryByProjectForm.java b/src/main/java/org/openelisglobal/patient/form/PatientEntryByProjectForm.java
index 4c1badcbd8..06650f8662 100644
--- a/src/main/java/org/openelisglobal/patient/form/PatientEntryByProjectForm.java
+++ b/src/main/java/org/openelisglobal/patient/form/PatientEntryByProjectForm.java
@@ -1,9 +1,9 @@
package org.openelisglobal.patient.form;
import java.util.Map;
-import javax.validation.Valid;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.provider.validation.AccessionNumberValidatorFactory.AccessionFormat;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/patient/saving/IPatientEntry.java b/src/main/java/org/openelisglobal/patient/saving/IPatientEntry.java
index 9b07aa5962..9eba84250a 100644
--- a/src/main/java/org/openelisglobal/patient/saving/IPatientEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/IPatientEntry.java
@@ -1,6 +1,6 @@
package org.openelisglobal.patient.saving;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.patient.form.PatientEntryByProjectForm;
diff --git a/src/main/java/org/openelisglobal/patient/saving/ISampleEntry.java b/src/main/java/org/openelisglobal/patient/saving/ISampleEntry.java
index 6249d28956..9d24c09449 100644
--- a/src/main/java/org/openelisglobal/patient/saving/ISampleEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/ISampleEntry.java
@@ -1,6 +1,6 @@
package org.openelisglobal.patient.saving;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.patient.saving.form.IAccessionerForm;
diff --git a/src/main/java/org/openelisglobal/patient/saving/PatientEditUpdate.java b/src/main/java/org/openelisglobal/patient/saving/PatientEditUpdate.java
index 7f56c83c8d..7a17eb0c48 100644
--- a/src/main/java/org/openelisglobal/patient/saving/PatientEditUpdate.java
+++ b/src/main/java/org/openelisglobal/patient/saving/PatientEditUpdate.java
@@ -18,7 +18,7 @@
package org.openelisglobal.patient.saving;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.internationalization.MessageUtil;
import org.openelisglobal.patient.form.PatientEntryByProjectForm;
diff --git a/src/main/java/org/openelisglobal/patient/saving/PatientEntry.java b/src/main/java/org/openelisglobal/patient/saving/PatientEntry.java
index 0a5fda9e5b..7b1d666b99 100644
--- a/src/main/java/org/openelisglobal/patient/saving/PatientEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/PatientEntry.java
@@ -25,7 +25,7 @@
package org.openelisglobal.patient.saving;
import java.sql.Timestamp;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.services.StatusService.RecordStatus;
import org.openelisglobal.common.util.DateUtil;
diff --git a/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterAnalyzer.java b/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterAnalyzer.java
index 45bd4981b4..2a072a3c5a 100644
--- a/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterAnalyzer.java
+++ b/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterAnalyzer.java
@@ -27,7 +27,7 @@
import static org.openelisglobal.common.services.StatusService.RecordStatus.InitialRegistration;
import static org.openelisglobal.common.services.StatusService.RecordStatus.NotRegistered;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.services.IStatusService;
import org.openelisglobal.patient.form.PatientEntryByProjectForm;
import org.openelisglobal.patient.util.PatientUtil;
diff --git a/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterSampleEntry.java b/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterSampleEntry.java
index 04f33db6fe..30a9307d1a 100644
--- a/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterSampleEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/PatientEntryAfterSampleEntry.java
@@ -26,7 +26,7 @@
import static org.openelisglobal.common.services.StatusService.RecordStatus.NotRegistered;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.services.StatusService.RecordStatus;
import org.openelisglobal.patient.form.PatientEntryByProjectForm;
import org.springframework.context.annotation.Scope;
diff --git a/src/main/java/org/openelisglobal/patient/saving/PatientSecondEntry.java b/src/main/java/org/openelisglobal/patient/saving/PatientSecondEntry.java
index 825d43def1..26a132f615 100644
--- a/src/main/java/org/openelisglobal/patient/saving/PatientSecondEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/PatientSecondEntry.java
@@ -21,7 +21,7 @@
import static org.openelisglobal.common.services.StatusService.RecordStatus.ValidationRegistration;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.internationalization.MessageUtil;
diff --git a/src/main/java/org/openelisglobal/patient/saving/SampleEntry.java b/src/main/java/org/openelisglobal/patient/saving/SampleEntry.java
index 226c405f6b..5ed90bce02 100644
--- a/src/main/java/org/openelisglobal/patient/saving/SampleEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/SampleEntry.java
@@ -17,7 +17,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.exception.LIMSException;
diff --git a/src/main/java/org/openelisglobal/patient/saving/SampleEntryAfterPatientEntry.java b/src/main/java/org/openelisglobal/patient/saving/SampleEntryAfterPatientEntry.java
index 6de50fa72c..ac340707bf 100644
--- a/src/main/java/org/openelisglobal/patient/saving/SampleEntryAfterPatientEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/SampleEntryAfterPatientEntry.java
@@ -2,7 +2,7 @@
import static org.openelisglobal.common.services.StatusService.RecordStatus.NotRegistered;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.services.StatusService.RecordStatus;
import org.openelisglobal.patient.saving.form.IAccessionerForm;
import org.openelisglobal.samplehuman.valueholder.SampleHuman;
diff --git a/src/main/java/org/openelisglobal/patient/saving/SampleSecondEntry.java b/src/main/java/org/openelisglobal/patient/saving/SampleSecondEntry.java
index 3489431d76..712080431e 100644
--- a/src/main/java/org/openelisglobal/patient/saving/SampleSecondEntry.java
+++ b/src/main/java/org/openelisglobal/patient/saving/SampleSecondEntry.java
@@ -20,7 +20,7 @@
import static org.openelisglobal.common.services.StatusService.RecordStatus.InitialRegistration;
import static org.openelisglobal.common.services.StatusService.RecordStatus.ValidationRegistration;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.internationalization.MessageUtil;
import org.openelisglobal.patient.saving.form.IAccessionerForm;
diff --git a/src/main/java/org/openelisglobal/patient/service/PatientServiceImpl.java b/src/main/java/org/openelisglobal/patient/service/PatientServiceImpl.java
index 9c4f94da43..a4bf4e0947 100644
--- a/src/main/java/org/openelisglobal/patient/service/PatientServiceImpl.java
+++ b/src/main/java/org/openelisglobal/patient/service/PatientServiceImpl.java
@@ -5,7 +5,7 @@
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.PersonAddressService;
import org.openelisglobal.address.valueholder.AddressPart;
diff --git a/src/main/java/org/openelisglobal/patient/valueholder/ObservationData.java b/src/main/java/org/openelisglobal/patient/valueholder/ObservationData.java
index 2f04f0671a..57a243cd79 100644
--- a/src/main/java/org/openelisglobal/patient/valueholder/ObservationData.java
+++ b/src/main/java/org/openelisglobal/patient/valueholder/ObservationData.java
@@ -18,8 +18,8 @@
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.apache.commons.lang3.tuple.Pair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.dictionary.ObservationHistoryList;
diff --git a/src/main/java/org/openelisglobal/patient/valueholder/PatientContact.java b/src/main/java/org/openelisglobal/patient/valueholder/PatientContact.java
index da79fbc0f8..fc34aa23a5 100644
--- a/src/main/java/org/openelisglobal/patient/valueholder/PatientContact.java
+++ b/src/main/java/org/openelisglobal/patient/valueholder/PatientContact.java
@@ -1,7 +1,7 @@
package org.openelisglobal.patient.valueholder;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.person.valueholder.Person;
diff --git a/src/main/java/org/openelisglobal/patientidentitytype/daoimpl/PatientIdentityTypeDAOImpl.java b/src/main/java/org/openelisglobal/patientidentitytype/daoimpl/PatientIdentityTypeDAOImpl.java
index 1d288bde80..751c05609a 100644
--- a/src/main/java/org/openelisglobal/patientidentitytype/daoimpl/PatientIdentityTypeDAOImpl.java
+++ b/src/main/java/org/openelisglobal/patientidentitytype/daoimpl/PatientIdentityTypeDAOImpl.java
@@ -14,8 +14,6 @@
package org.openelisglobal.patientidentitytype.daoimpl;
import java.util.List;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.query.Query;
@@ -35,9 +33,6 @@ public PatientIdentityTypeDAOImpl() {
super(PatientIdentityType.class);
}
- @SuppressWarnings("unused")
- private static Log log = LogFactory.getLog(PatientIdentityTypeDAOImpl.class);
-
@Override
@Transactional(readOnly = true)
public List getAllPatientIdenityTypes() throws LIMSRuntimeException {
diff --git a/src/main/java/org/openelisglobal/patienttype/daoimpl/PatientTypeDAOImpl.java b/src/main/java/org/openelisglobal/patienttype/daoimpl/PatientTypeDAOImpl.java
index 9f8f06ea6e..7b8f6f595d 100644
--- a/src/main/java/org/openelisglobal/patienttype/daoimpl/PatientTypeDAOImpl.java
+++ b/src/main/java/org/openelisglobal/patienttype/daoimpl/PatientTypeDAOImpl.java
@@ -13,8 +13,6 @@
import java.util.List;
import java.util.Vector;
import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.hibernate.Session;
import org.openelisglobal.common.daoimpl.BaseDAOImpl;
import org.openelisglobal.common.exception.LIMSRuntimeException;
@@ -34,9 +32,6 @@ public PatientTypeDAOImpl() {
super(PatientType.class);
}
- @SuppressWarnings("unused")
- private static Log log = LogFactory.getLog(PatientTypeDAOImpl.class);
-
// @Override
// public void deleteData(List patientTypes) throws LIMSRuntimeException {
// // add to audit trail
diff --git a/src/main/java/org/openelisglobal/person/service/PersonServiceImpl.java b/src/main/java/org/openelisglobal/person/service/PersonServiceImpl.java
index 92f2569e98..cc415b7a09 100644
--- a/src/main/java/org/openelisglobal/person/service/PersonServiceImpl.java
+++ b/src/main/java/org/openelisglobal/person/service/PersonServiceImpl.java
@@ -3,7 +3,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.PersonAddressService;
diff --git a/src/main/java/org/openelisglobal/person/valueholder/Person.java b/src/main/java/org/openelisglobal/person/valueholder/Person.java
index 5e2b51dec7..8d615b6663 100644
--- a/src/main/java/org/openelisglobal/person/valueholder/Person.java
+++ b/src/main/java/org/openelisglobal/person/valueholder/Person.java
@@ -16,8 +16,8 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.HashSet;
import java.util.Set;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.Pattern;
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.AssociationInverseSide;
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.KeywordField;
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.ObjectPath;
diff --git a/src/main/java/org/openelisglobal/plugin/PluginConfiguration.java b/src/main/java/org/openelisglobal/plugin/PluginConfiguration.java
index 4bac53902c..9da2f388ce 100644
--- a/src/main/java/org/openelisglobal/plugin/PluginConfiguration.java
+++ b/src/main/java/org/openelisglobal/plugin/PluginConfiguration.java
@@ -10,8 +10,8 @@
import java.util.Properties;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
-import javax.annotation.PostConstruct;
-import javax.servlet.Servlet;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.Servlet;
import org.apache.commons.io.IOUtils;
import org.dom4j.Attribute;
import org.dom4j.Document;
diff --git a/src/main/java/org/openelisglobal/plugin/PluginLoader.java b/src/main/java/org/openelisglobal/plugin/PluginLoader.java
index 168735f810..e0bb6edc23 100644
--- a/src/main/java/org/openelisglobal/plugin/PluginLoader.java
+++ b/src/main/java/org/openelisglobal/plugin/PluginLoader.java
@@ -27,7 +27,7 @@
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import java.util.jar.Manifest;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.io.IOUtils;
import org.dom4j.Attribute;
import org.dom4j.Document;
diff --git a/src/main/java/org/openelisglobal/plugin/PluginsController.java b/src/main/java/org/openelisglobal/plugin/PluginsController.java
index 2c1a89457a..d69eb28dd4 100644
--- a/src/main/java/org/openelisglobal/plugin/PluginsController.java
+++ b/src/main/java/org/openelisglobal/plugin/PluginsController.java
@@ -1,9 +1,9 @@
package org.openelisglobal.plugin;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.spring.util.SpringContext;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
diff --git a/src/main/java/org/openelisglobal/plugin/ServletPlugin.java b/src/main/java/org/openelisglobal/plugin/ServletPlugin.java
index 607c5295f5..257332e84e 100644
--- a/src/main/java/org/openelisglobal/plugin/ServletPlugin.java
+++ b/src/main/java/org/openelisglobal/plugin/ServletPlugin.java
@@ -1,6 +1,6 @@
package org.openelisglobal.plugin;
-import javax.servlet.Servlet;
+import jakarta.servlet.Servlet;
public interface ServletPlugin extends Servlet {
}
diff --git a/src/main/java/org/openelisglobal/program/controller/ProgramController.java b/src/main/java/org/openelisglobal/program/controller/ProgramController.java
index 7d6974dd0b..58206bd81e 100644
--- a/src/main/java/org/openelisglobal/program/controller/ProgramController.java
+++ b/src/main/java/org/openelisglobal/program/controller/ProgramController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.hl7.fhir.r4.model.Questionnaire;
diff --git a/src/main/java/org/openelisglobal/program/controller/cytology/CytologyController.java b/src/main/java/org/openelisglobal/program/controller/cytology/CytologyController.java
index 16f2ddc7d4..e0368b1969 100644
--- a/src/main/java/org/openelisglobal/program/controller/cytology/CytologyController.java
+++ b/src/main/java/org/openelisglobal/program/controller/cytology/CytologyController.java
@@ -6,7 +6,7 @@
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.rest.BaseRestController;
import org.openelisglobal.program.bean.CytologyDashBoardCount;
import org.openelisglobal.program.service.cytology.CytologyDisplayService;
diff --git a/src/main/java/org/openelisglobal/program/controller/immunohistochemistry/ImmunohistochemistryController.java b/src/main/java/org/openelisglobal/program/controller/immunohistochemistry/ImmunohistochemistryController.java
index c136d04bc6..7b22eb6ea5 100644
--- a/src/main/java/org/openelisglobal/program/controller/immunohistochemistry/ImmunohistochemistryController.java
+++ b/src/main/java/org/openelisglobal/program/controller/immunohistochemistry/ImmunohistochemistryController.java
@@ -6,7 +6,7 @@
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.rest.BaseRestController;
import org.openelisglobal.program.bean.ImmunohistochemistryDashBoardCount;
import org.openelisglobal.program.service.ImmunohistochemistryDisplayService;
diff --git a/src/main/java/org/openelisglobal/program/controller/pathology/PathologyController.java b/src/main/java/org/openelisglobal/program/controller/pathology/PathologyController.java
index d0772bb688..e9c3e0fe68 100644
--- a/src/main/java/org/openelisglobal/program/controller/pathology/PathologyController.java
+++ b/src/main/java/org/openelisglobal/program/controller/pathology/PathologyController.java
@@ -6,7 +6,7 @@
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.rest.BaseRestController;
import org.openelisglobal.program.bean.PathologyDashBoardCount;
import org.openelisglobal.program.service.PathologyDisplayService;
diff --git a/src/main/java/org/openelisglobal/program/dao/cytology/CytologySampleDAOImpl.java b/src/main/java/org/openelisglobal/program/dao/cytology/CytologySampleDAOImpl.java
index db7b5c27ca..e07be55b67 100644
--- a/src/main/java/org/openelisglobal/program/dao/cytology/CytologySampleDAOImpl.java
+++ b/src/main/java/org/openelisglobal/program/dao/cytology/CytologySampleDAOImpl.java
@@ -3,7 +3,7 @@
import java.sql.Timestamp;
import java.util.List;
import java.util.stream.Collectors;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.hibernate.Session;
import org.hibernate.query.Query;
import org.openelisglobal.common.daoimpl.BaseDAOImpl;
diff --git a/src/main/java/org/openelisglobal/program/service/ImmunohistochemistryDisplayServiceImpl.java b/src/main/java/org/openelisglobal/program/service/ImmunohistochemistryDisplayServiceImpl.java
index 8ae1b199a3..8801eaa05d 100644
--- a/src/main/java/org/openelisglobal/program/service/ImmunohistochemistryDisplayServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/ImmunohistochemistryDisplayServiceImpl.java
@@ -2,7 +2,7 @@
import java.util.Optional;
import java.util.stream.Collectors;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.hl7.fhir.r4.model.Questionnaire;
import org.hl7.fhir.r4.model.QuestionnaireResponse;
diff --git a/src/main/java/org/openelisglobal/program/service/ImmunohistochemistrySampleServiceImpl.java b/src/main/java/org/openelisglobal/program/service/ImmunohistochemistrySampleServiceImpl.java
index c45cf68c54..ecbe62e51e 100644
--- a/src/main/java/org/openelisglobal/program/service/ImmunohistochemistrySampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/ImmunohistochemistrySampleServiceImpl.java
@@ -5,7 +5,7 @@
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
diff --git a/src/main/java/org/openelisglobal/program/service/PathologyDisplayServiceImpl.java b/src/main/java/org/openelisglobal/program/service/PathologyDisplayServiceImpl.java
index d8a426647f..b8ebbce01e 100644
--- a/src/main/java/org/openelisglobal/program/service/PathologyDisplayServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/PathologyDisplayServiceImpl.java
@@ -2,7 +2,7 @@
import java.util.Optional;
import java.util.stream.Collectors;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.hl7.fhir.r4.model.Questionnaire;
import org.hl7.fhir.r4.model.QuestionnaireResponse;
diff --git a/src/main/java/org/openelisglobal/program/service/PathologySampleServiceImpl.java b/src/main/java/org/openelisglobal/program/service/PathologySampleServiceImpl.java
index 5d4e91a0f4..9fe6bc942a 100644
--- a/src/main/java/org/openelisglobal/program/service/PathologySampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/PathologySampleServiceImpl.java
@@ -6,7 +6,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
diff --git a/src/main/java/org/openelisglobal/program/service/ProgramAutocreateService.java b/src/main/java/org/openelisglobal/program/service/ProgramAutocreateService.java
index dd8d5826fa..8b21bcc87f 100644
--- a/src/main/java/org/openelisglobal/program/service/ProgramAutocreateService.java
+++ b/src/main/java/org/openelisglobal/program/service/ProgramAutocreateService.java
@@ -3,15 +3,15 @@
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
-import com.fasterxml.jackson.datatype.hibernate5.Hibernate5Module;
+import com.fasterxml.jackson.datatype.hibernate5.jakarta.Hibernate5JakartaModule;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Optional;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
-import javax.transaction.Transactional;
+import jakarta.annotation.PostConstruct;
+import jakarta.transaction.Transactional;
import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
import org.hl7.fhir.r4.model.Questionnaire;
import org.openelisglobal.common.log.LogEvent;
@@ -117,7 +117,7 @@ public void autocreateProgram() {
String contents = reader.lines().map(line -> line + "\n").collect(Collectors.joining());
ObjectMapper mapper = new ObjectMapper();
- mapper.registerModule(new Hibernate5Module());
+ mapper.registerModule(new Hibernate5JakartaModule());
mapper.setSerializationInclusion(Include.NON_NULL);
SimpleModule module = new SimpleModule();
diff --git a/src/main/java/org/openelisglobal/program/service/cytology/CytologyDisplayServiceImpl.java b/src/main/java/org/openelisglobal/program/service/cytology/CytologyDisplayServiceImpl.java
index 7fba93f88b..63319bde76 100644
--- a/src/main/java/org/openelisglobal/program/service/cytology/CytologyDisplayServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/cytology/CytologyDisplayServiceImpl.java
@@ -3,7 +3,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.hl7.fhir.r4.model.Questionnaire;
import org.hl7.fhir.r4.model.QuestionnaireResponse;
diff --git a/src/main/java/org/openelisglobal/program/service/cytology/CytologySampleServiceImpl.java b/src/main/java/org/openelisglobal/program/service/cytology/CytologySampleServiceImpl.java
index 10f97a708b..ad9bd1bb23 100644
--- a/src/main/java/org/openelisglobal/program/service/cytology/CytologySampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/program/service/cytology/CytologySampleServiceImpl.java
@@ -5,7 +5,7 @@
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/Program.java b/src/main/java/org/openelisglobal/program/valueholder/Program.java
index d4597462df..f48af5c7ac 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/Program.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/Program.java
@@ -17,7 +17,7 @@
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.UUID;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.test.valueholder.TestSection;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/ProgramSample.java b/src/main/java/org/openelisglobal/program/valueholder/ProgramSample.java
index b4818872f4..eda13cb232 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/ProgramSample.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/ProgramSample.java
@@ -1,19 +1,19 @@
package org.openelisglobal.program.valueholder;
import java.util.UUID;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Inheritance;
-import javax.persistence.InheritanceType;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.Inheritance;
+import jakarta.persistence.InheritanceType;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.sample.valueholder.Sample;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosis.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosis.java
index 93b4c9523b..c284346a88 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosis.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosis.java
@@ -1,16 +1,16 @@
package org.openelisglobal.program.valueholder.cytology;
import java.util.List;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosisCategoryResultsMap.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosisCategoryResultsMap.java
index 3f06b0729a..0cca8abf78 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosisCategoryResultsMap.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyDiagnosisCategoryResultsMap.java
@@ -1,16 +1,16 @@
package org.openelisglobal.program.valueholder.cytology;
import java.util.List;
-import javax.persistence.Column;
-import javax.persistence.Convert;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Convert;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.hibernateConverter.StringListConverter;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.program.valueholder.cytology.CytologyDiagnosis.CytologyDiagnosisResultType;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyReport.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyReport.java
index cb15f9d8f0..1d961b135f 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyReport.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologyReport.java
@@ -1,15 +1,15 @@
package org.openelisglobal.program.valueholder.cytology;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.constraints.NotNull;
import org.hibernate.annotations.Type;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySample.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySample.java
index 1a1c6ae902..1c9cbb795a 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySample.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySample.java
@@ -2,17 +2,17 @@
import java.util.List;
import java.util.stream.Collectors;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.program.valueholder.ProgramSample;
import org.openelisglobal.systemuser.valueholder.SystemUser;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySlide.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySlide.java
index 62fb260928..b8e143b3fe 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySlide.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySlide.java
@@ -1,12 +1,12 @@
package org.openelisglobal.program.valueholder.cytology;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.hibernate.annotations.Type;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySpecimenAdequacy.java b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySpecimenAdequacy.java
index 12477227e7..649df8e229 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySpecimenAdequacy.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/cytology/CytologySpecimenAdequacy.java
@@ -1,19 +1,19 @@
package org.openelisglobal.program.valueholder.cytology;
import java.util.List;
-import javax.persistence.CollectionTable;
-import javax.persistence.Column;
-import javax.persistence.ElementCollection;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.CollectionTable;
+import jakarta.persistence.Column;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySample.java b/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySample.java
index 676dd0c542..7bffb70462 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySample.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySample.java
@@ -2,17 +2,17 @@
import java.util.List;
import java.util.stream.Collectors;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.program.valueholder.ProgramSample;
import org.openelisglobal.program.valueholder.pathology.PathologySample;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySampleReport.java b/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySampleReport.java
index 6680c5ee1d..b72d909088 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySampleReport.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/immunohistochemistry/ImmunohistochemistrySampleReport.java
@@ -1,15 +1,15 @@
package org.openelisglobal.program.valueholder.immunohistochemistry;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.constraints.NotNull;
import org.hibernate.annotations.Type;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyBlock.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyBlock.java
index f2388544b4..11ba2433f4 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyBlock.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyBlock.java
@@ -1,12 +1,12 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyConclusion.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyConclusion.java
index ca2efe5d87..b399c6782d 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyConclusion.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyConclusion.java
@@ -1,13 +1,13 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyReport.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyReport.java
index 59e790049e..db1d41625c 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyReport.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyReport.java
@@ -1,15 +1,15 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.validation.constraints.NotNull;
import org.hibernate.annotations.Type;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyRequest.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyRequest.java
index f69937d71e..2e5186e0c9 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyRequest.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyRequest.java
@@ -1,13 +1,13 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySample.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySample.java
index f428607a49..fbac1b03d5 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySample.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySample.java
@@ -2,17 +2,17 @@
import java.util.List;
import java.util.stream.Collectors;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.Table;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.apache.commons.lang3.StringUtils;
import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySlide.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySlide.java
index 86a0ad064e..4f00044ff1 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySlide.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologySlide.java
@@ -1,12 +1,12 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.hibernate.annotations.Type;
import org.openelisglobal.common.valueholder.BaseObject;
diff --git a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyTechnique.java b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyTechnique.java
index a75d32666d..736658345f 100644
--- a/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyTechnique.java
+++ b/src/main/java/org/openelisglobal/program/valueholder/pathology/PathologyTechnique.java
@@ -1,13 +1,13 @@
package org.openelisglobal.program.valueholder.pathology;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/provider/controller/ProviderMenuController.java b/src/main/java/org/openelisglobal/provider/controller/ProviderMenuController.java
index c9efdd6400..554715b399 100644
--- a/src/main/java/org/openelisglobal/provider/controller/ProviderMenuController.java
+++ b/src/main/java/org/openelisglobal/provider/controller/ProviderMenuController.java
@@ -3,9 +3,9 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/provider/controller/rest/ProviderMenuRestController.java b/src/main/java/org/openelisglobal/provider/controller/rest/ProviderMenuRestController.java
index d202e11465..cba10aeb79 100644
--- a/src/main/java/org/openelisglobal/provider/controller/rest/ProviderMenuRestController.java
+++ b/src/main/java/org/openelisglobal/provider/controller/rest/ProviderMenuRestController.java
@@ -3,9 +3,9 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.controller.BaseMenuController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.form.AdminOptionMenuForm;
diff --git a/src/main/java/org/openelisglobal/provider/form/ProviderMenuForm.java b/src/main/java/org/openelisglobal/provider/form/ProviderMenuForm.java
index 029696119d..a6bf37157b 100644
--- a/src/main/java/org/openelisglobal/provider/form/ProviderMenuForm.java
+++ b/src/main/java/org/openelisglobal/provider/form/ProviderMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.provider.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.provider.valueholder.Provider;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/CorrectiveActionController.java b/src/main/java/org/openelisglobal/qaevent/controller/CorrectiveActionController.java
index 58f1e8870f..aedc215dcf 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/CorrectiveActionController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/CorrectiveActionController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.qaevent.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/NonConformityController.java b/src/main/java/org/openelisglobal/qaevent/controller/NonConformityController.java
index 49e30d2977..e95afda838 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/NonConformityController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/NonConformityController.java
@@ -10,7 +10,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/RejectionController.java b/src/main/java/org/openelisglobal/qaevent/controller/RejectionController.java
index e568d035d4..5d5502c7f7 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/RejectionController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/RejectionController.java
@@ -6,7 +6,7 @@
import java.util.Comparator;
import java.util.Date;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.ObjectUtils;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/ReportNonConformingEventController.java b/src/main/java/org/openelisglobal/qaevent/controller/ReportNonConformingEventController.java
index 01ae2df0d5..e6dba2e5c9 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/ReportNonConformingEventController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/ReportNonConformingEventController.java
@@ -6,8 +6,8 @@
import java.util.Calendar;
import java.util.Date;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/ViewNonConformingEventController.java b/src/main/java/org/openelisglobal/qaevent/controller/ViewNonConformingEventController.java
index 6eb534ed41..bbf773da30 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/ViewNonConformingEventController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/ViewNonConformingEventController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.qaevent.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/rest/NonConformingEventsCorrectionActionRestController.java b/src/main/java/org/openelisglobal/qaevent/controller/rest/NonConformingEventsCorrectionActionRestController.java
index 3767316fc9..35c3256c5a 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/rest/NonConformingEventsCorrectionActionRestController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/rest/NonConformingEventsCorrectionActionRestController.java
@@ -5,7 +5,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.rest.BaseRestController;
import org.openelisglobal.common.services.DisplayListService;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/rest/ReportNonConformEventsRestController.java b/src/main/java/org/openelisglobal/qaevent/controller/rest/ReportNonConformEventsRestController.java
index 6fd6e4e798..5146731d23 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/rest/ReportNonConformEventsRestController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/rest/ReportNonConformEventsRestController.java
@@ -2,7 +2,7 @@
import java.util.*;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSInvalidConfigurationException;
import org.openelisglobal.common.provider.query.PatientSearchResults;
import org.openelisglobal.common.rest.BaseRestController;
diff --git a/src/main/java/org/openelisglobal/qaevent/controller/rest/ViewNonConformEventsRestController.java b/src/main/java/org/openelisglobal/qaevent/controller/rest/ViewNonConformEventsRestController.java
index 4f8f1ef3c2..719844e75f 100644
--- a/src/main/java/org/openelisglobal/qaevent/controller/rest/ViewNonConformEventsRestController.java
+++ b/src/main/java/org/openelisglobal/qaevent/controller/rest/ViewNonConformEventsRestController.java
@@ -4,7 +4,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.rest.BaseRestController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.util.DateUtil;
diff --git a/src/main/java/org/openelisglobal/qaevent/form/NonConformingEventForm.java b/src/main/java/org/openelisglobal/qaevent/form/NonConformingEventForm.java
index a125197096..5ae5efb100 100644
--- a/src/main/java/org/openelisglobal/qaevent/form/NonConformingEventForm.java
+++ b/src/main/java/org/openelisglobal/qaevent/form/NonConformingEventForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.qaevent.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/qaevent/form/NonConformityForm.java b/src/main/java/org/openelisglobal/qaevent/form/NonConformityForm.java
index 78bb4fb119..581f186682 100644
--- a/src/main/java/org/openelisglobal/qaevent/form/NonConformityForm.java
+++ b/src/main/java/org/openelisglobal/qaevent/form/NonConformityForm.java
@@ -1,10 +1,10 @@
package org.openelisglobal.qaevent.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/qaevent/form/RejectionForm.java b/src/main/java/org/openelisglobal/qaevent/form/RejectionForm.java
index c55ee3cba2..6d90eb567e 100644
--- a/src/main/java/org/openelisglobal/qaevent/form/RejectionForm.java
+++ b/src/main/java/org/openelisglobal/qaevent/form/RejectionForm.java
@@ -2,8 +2,8 @@
import java.sql.Date;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/qaevent/valueholder/NcEvent.java b/src/main/java/org/openelisglobal/qaevent/valueholder/NcEvent.java
index 0bcb021a38..d4fd57c4bf 100644
--- a/src/main/java/org/openelisglobal/qaevent/valueholder/NcEvent.java
+++ b/src/main/java/org/openelisglobal/qaevent/valueholder/NcEvent.java
@@ -2,9 +2,9 @@
import java.sql.Date;
import java.util.Objects;
-import javax.persistence.Basic;
-import javax.persistence.Column;
-import javax.persistence.Id;
+import jakarta.persistence.Basic;
+import jakarta.persistence.Column;
+import jakarta.persistence.Id;
import org.openelisglobal.common.valueholder.BaseObject;
public class NcEvent extends BaseObject {
diff --git a/src/main/java/org/openelisglobal/qaevent/valueholder/retroCI/QaEventItem.java b/src/main/java/org/openelisglobal/qaevent/valueholder/retroCI/QaEventItem.java
index ecdf0a2f96..65c8be6a80 100644
--- a/src/main/java/org/openelisglobal/qaevent/valueholder/retroCI/QaEventItem.java
+++ b/src/main/java/org/openelisglobal/qaevent/valueholder/retroCI/QaEventItem.java
@@ -19,9 +19,9 @@
package org.openelisglobal.qaevent.valueholder.retroCI;
import java.io.Serializable;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
-import javax.validation.groups.Default;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.groups.Default;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.qaevent.form.NonConformityForm;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/referral/action/beanitems/ReferralItem.java b/src/main/java/org/openelisglobal/referral/action/beanitems/ReferralItem.java
index 7ad79ab744..faa6f65c8f 100644
--- a/src/main/java/org/openelisglobal/referral/action/beanitems/ReferralItem.java
+++ b/src/main/java/org/openelisglobal/referral/action/beanitems/ReferralItem.java
@@ -16,8 +16,8 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.referral.form.ReferredOutTestsForm;
diff --git a/src/main/java/org/openelisglobal/referral/action/beanitems/ReferredTest.java b/src/main/java/org/openelisglobal/referral/action/beanitems/ReferredTest.java
index 8a0f835dd8..3020b8046c 100644
--- a/src/main/java/org/openelisglobal/referral/action/beanitems/ReferredTest.java
+++ b/src/main/java/org/openelisglobal/referral/action/beanitems/ReferredTest.java
@@ -15,7 +15,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.referral.form.ReferredOutTestsForm;
diff --git a/src/main/java/org/openelisglobal/referral/controller/ReferredOutTestsController.java b/src/main/java/org/openelisglobal/referral/controller/ReferredOutTestsController.java
index 66bb7c3143..af31e77cf2 100644
--- a/src/main/java/org/openelisglobal/referral/controller/ReferredOutTestsController.java
+++ b/src/main/java/org/openelisglobal/referral/controller/ReferredOutTestsController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/referral/controller/rest/ReferredOutTestsRestController.java b/src/main/java/org/openelisglobal/referral/controller/rest/ReferredOutTestsRestController.java
index 89a9f9f9dc..4ef686cc16 100644
--- a/src/main/java/org/openelisglobal/referral/controller/rest/ReferredOutTestsRestController.java
+++ b/src/main/java/org/openelisglobal/referral/controller/rest/ReferredOutTestsRestController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.referral.form.ReferredOutTestsForm;
diff --git a/src/main/java/org/openelisglobal/referral/fhir/controller/FhirReferralReceptionController.java b/src/main/java/org/openelisglobal/referral/fhir/controller/FhirReferralReceptionController.java
index ba80976310..c94d77871f 100644
--- a/src/main/java/org/openelisglobal/referral/fhir/controller/FhirReferralReceptionController.java
+++ b/src/main/java/org/openelisglobal/referral/fhir/controller/FhirReferralReceptionController.java
@@ -2,7 +2,7 @@
import java.util.List;
import java.util.stream.Collectors;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
diff --git a/src/main/java/org/openelisglobal/referral/fhir/form/FhirReferralSearchForm.java b/src/main/java/org/openelisglobal/referral/fhir/form/FhirReferralSearchForm.java
index ee520456aa..b2a084adb3 100644
--- a/src/main/java/org/openelisglobal/referral/fhir/form/FhirReferralSearchForm.java
+++ b/src/main/java/org/openelisglobal/referral/fhir/form/FhirReferralSearchForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.referral.fhir.form;
import java.util.List;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/referral/fhir/service/FhirReferralServiceImpl.java b/src/main/java/org/openelisglobal/referral/fhir/service/FhirReferralServiceImpl.java
index 33f24d5c78..7a417c6048 100644
--- a/src/main/java/org/openelisglobal/referral/fhir/service/FhirReferralServiceImpl.java
+++ b/src/main/java/org/openelisglobal/referral/fhir/service/FhirReferralServiceImpl.java
@@ -9,7 +9,7 @@
import java.util.Map;
import java.util.Optional;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.hl7.fhir.r4.model.Bundle;
diff --git a/src/main/java/org/openelisglobal/referral/form/ReferredOutTestsForm.java b/src/main/java/org/openelisglobal/referral/form/ReferredOutTestsForm.java
index e553a254d9..1f6b4657a8 100644
--- a/src/main/java/org/openelisglobal/referral/form/ReferredOutTestsForm.java
+++ b/src/main/java/org/openelisglobal/referral/form/ReferredOutTestsForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.referral.form;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.patient.action.bean.PatientSearch;
diff --git a/src/main/java/org/openelisglobal/referral/service/ReferralSetServiceImpl.java b/src/main/java/org/openelisglobal/referral/service/ReferralSetServiceImpl.java
index c0587426b8..8ad8ed16a9 100644
--- a/src/main/java/org/openelisglobal/referral/service/ReferralSetServiceImpl.java
+++ b/src/main/java/org/openelisglobal/referral/service/ReferralSetServiceImpl.java
@@ -8,7 +8,7 @@
import java.util.List;
import java.util.Set;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/reportconfiguration/controller/ReportConfigurationController.java b/src/main/java/org/openelisglobal/reportconfiguration/controller/ReportConfigurationController.java
index 4e30b50374..f760c421ac 100644
--- a/src/main/java/org/openelisglobal/reportconfiguration/controller/ReportConfigurationController.java
+++ b/src/main/java/org/openelisglobal/reportconfiguration/controller/ReportConfigurationController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.internationalization.MessageUtil;
import org.openelisglobal.reportconfiguration.form.ReportConfigurationForm;
diff --git a/src/main/java/org/openelisglobal/reportconfiguration/valueholder/Report.java b/src/main/java/org/openelisglobal/reportconfiguration/valueholder/Report.java
index e9f8167ca6..af4d780379 100644
--- a/src/main/java/org/openelisglobal/reportconfiguration/valueholder/Report.java
+++ b/src/main/java/org/openelisglobal/reportconfiguration/valueholder/Report.java
@@ -1,10 +1,10 @@
package org.openelisglobal.reportconfiguration.valueholder;
import java.util.Objects;
-import javax.persistence.Basic;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
+import jakarta.persistence.Basic;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.Id;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/CSVRoutineSampleExportReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/CSVRoutineSampleExportReport.java
index d9390c906f..a45402f1f0 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/CSVRoutineSampleExportReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/CSVRoutineSampleExportReport.java
@@ -19,7 +19,7 @@
import java.sql.SQLException;
import java.text.ParseException;
import java.util.List;
-import javax.xml.ws.Response;
+import jakarta.xml.ws.Response;
import net.sf.jasperreports.engine.JRException;
import org.openelisglobal.reports.action.implementation.reportBeans.RoutineColumnBuilder;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/CSVSampleExportReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/CSVSampleExportReport.java
index 0f60662d8f..b25e8f96c5 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/CSVSampleExportReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/CSVSampleExportReport.java
@@ -19,7 +19,7 @@
import java.sql.SQLException;
import java.text.ParseException;
import java.util.List;
-import javax.xml.ws.Response;
+import jakarta.xml.ws.Response;
import net.sf.jasperreports.engine.JRException;
import org.openelisglobal.reports.action.implementation.reportBeans.CSVColumnBuilder;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/CollectionReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/CollectionReport.java
index 25b6af9651..0d994cb2af 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/CollectionReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/CollectionReport.java
@@ -13,9 +13,9 @@
*/
package org.openelisglobal.reports.action.implementation;
-import com.lowagie.text.DocumentException;
-import com.lowagie.text.pdf.PdfCopyFields;
-import com.lowagie.text.pdf.PdfReader;
+import com.itextpdf.text.DocumentException;
+import com.itextpdf.text.pdf.PdfCopyFields;
+import com.itextpdf.text.pdf.PdfReader;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/IReportCreator.java b/src/main/java/org/openelisglobal/reports/action/implementation/IReportCreator.java
index 5208a17403..9db7d0f755 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/IReportCreator.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/IReportCreator.java
@@ -13,7 +13,7 @@
*/
package org.openelisglobal.reports.action.implementation;
-import com.lowagie.text.DocumentException;
+import com.itextpdf.text.DocumentException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.sql.SQLException;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/PatientProgramReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/PatientProgramReport.java
index 4f5ea2b40c..aa18231927 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/PatientProgramReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/PatientProgramReport.java
@@ -10,7 +10,7 @@
import java.util.List;
import java.util.Optional;
import java.util.Set;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import org.apache.commons.validator.GenericValidator;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/PatientReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/PatientReport.java
index 88f801cc4a..c8536337c0 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/PatientReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/PatientReport.java
@@ -25,8 +25,8 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
-import org.apache.commons.lang.StringEscapeUtils;
+import jakarta.annotation.PostConstruct;
+import org.apache.commons.text.StringEscapeUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.address.service.AddressPartService;
@@ -890,7 +890,7 @@ protected ClinicalPatientData buildClinicalPatientData(boolean hasParent) {
testName = getTestName(hasParent);
// Not sure if it is a bug in escapeHtml but the wrong markup is
// generated
- testName = StringEscapeUtils.escapeHtml(testName).replace("&mu", "µ");
+ testName = StringEscapeUtils.escapeHtml4(testName).replace("&mu", "µ");
}
if (FormFields.getInstance().useField(Field.SampleEntryUseReceptionHour)) {
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/ReportSpecificationList.java b/src/main/java/org/openelisglobal/reports/action/implementation/ReportSpecificationList.java
index 1121925ccc..0ca7b4522b 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/ReportSpecificationList.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/ReportSpecificationList.java
@@ -19,7 +19,7 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.reports.form.ReportForm;
diff --git a/src/main/java/org/openelisglobal/reports/action/implementation/WHONETCSVRoutineSampleExportReport.java b/src/main/java/org/openelisglobal/reports/action/implementation/WHONETCSVRoutineSampleExportReport.java
index 30f3182868..c7a28e2759 100644
--- a/src/main/java/org/openelisglobal/reports/action/implementation/WHONETCSVRoutineSampleExportReport.java
+++ b/src/main/java/org/openelisglobal/reports/action/implementation/WHONETCSVRoutineSampleExportReport.java
@@ -19,7 +19,7 @@
import java.sql.SQLException;
import java.text.ParseException;
import java.util.List;
-import javax.xml.ws.Response;
+import jakarta.xml.ws.Response;
import net.sf.jasperreports.engine.JRException;
import org.openelisglobal.reports.action.implementation.reportBeans.WHONETCSVRoutineColumnBuilder;
diff --git a/src/main/java/org/openelisglobal/reports/controller/ReportController.java b/src/main/java/org/openelisglobal/reports/controller/ReportController.java
index 7dece8d568..1f54cc033f 100644
--- a/src/main/java/org/openelisglobal/reports/controller/ReportController.java
+++ b/src/main/java/org/openelisglobal/reports/controller/ReportController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.reports.controller;
-import com.lowagie.text.DocumentException;
+import com.itextpdf.text.DocumentException;
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@@ -11,11 +11,11 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
import net.sf.jasperreports.engine.JRException;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/reports/controller/rest/ReportRestController.java b/src/main/java/org/openelisglobal/reports/controller/rest/ReportRestController.java
index 9893169b35..fabbb98845 100644
--- a/src/main/java/org/openelisglobal/reports/controller/rest/ReportRestController.java
+++ b/src/main/java/org/openelisglobal/reports/controller/rest/ReportRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.reports.controller.rest;
-import com.lowagie.text.DocumentException;
+import com.itextpdf.text.DocumentException;
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@@ -9,10 +9,10 @@
import java.sql.SQLException;
import java.text.ParseException;
import java.util.HashMap;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JRException;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/reports/form/ReportForm.java b/src/main/java/org/openelisglobal/reports/form/ReportForm.java
index 38720c3151..715dc1d2b9 100644
--- a/src/main/java/org/openelisglobal/reports/form/ReportForm.java
+++ b/src/main/java/org/openelisglobal/reports/form/ReportForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.reports.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/reports/service/WHONetReportServiceImpl.java b/src/main/java/org/openelisglobal/reports/service/WHONetReportServiceImpl.java
index de64dab36a..0c30edf7cf 100644
--- a/src/main/java/org/openelisglobal/reports/service/WHONetReportServiceImpl.java
+++ b/src/main/java/org/openelisglobal/reports/service/WHONetReportServiceImpl.java
@@ -7,7 +7,7 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.services.IStatusService;
diff --git a/src/main/java/org/openelisglobal/result/action/util/ResultsLoadUtility.java b/src/main/java/org/openelisglobal/result/action/util/ResultsLoadUtility.java
index fa2463c184..a1b5aee196 100644
--- a/src/main/java/org/openelisglobal/result/action/util/ResultsLoadUtility.java
+++ b/src/main/java/org/openelisglobal/result/action/util/ResultsLoadUtility.java
@@ -24,7 +24,7 @@
import java.util.Map;
import java.util.Random;
import java.util.Set;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/result/action/util/ResultsPaging.java b/src/main/java/org/openelisglobal/result/action/util/ResultsPaging.java
index 57beee4456..0f5d2a5cc8 100644
--- a/src/main/java/org/openelisglobal/result/action/util/ResultsPaging.java
+++ b/src/main/java/org/openelisglobal/result/action/util/ResultsPaging.java
@@ -16,7 +16,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.paging.IPageDivider;
import org.openelisglobal.common.paging.IPageFlattener;
diff --git a/src/main/java/org/openelisglobal/result/controller/AccessionResultsController.java b/src/main/java/org/openelisglobal/result/controller/AccessionResultsController.java
index 28a2e7774e..1cc65747b7 100644
--- a/src/main/java/org/openelisglobal/result/controller/AccessionResultsController.java
+++ b/src/main/java/org/openelisglobal/result/controller/AccessionResultsController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/result/controller/AnalyzerResultsController.java b/src/main/java/org/openelisglobal/result/controller/AnalyzerResultsController.java
index 105dfe2948..0e7ec26b64 100644
--- a/src/main/java/org/openelisglobal/result/controller/AnalyzerResultsController.java
+++ b/src/main/java/org/openelisglobal/result/controller/AnalyzerResultsController.java
@@ -9,8 +9,8 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/result/controller/LogbookResultsController.java b/src/main/java/org/openelisglobal/result/controller/LogbookResultsController.java
index 5d79d95e35..143a47fa5d 100644
--- a/src/main/java/org/openelisglobal/result/controller/LogbookResultsController.java
+++ b/src/main/java/org/openelisglobal/result/controller/LogbookResultsController.java
@@ -11,7 +11,7 @@
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
import org.json.simple.JSONArray;
diff --git a/src/main/java/org/openelisglobal/result/controller/PatientResultsController.java b/src/main/java/org/openelisglobal/result/controller/PatientResultsController.java
index 73483835f2..2da474ad7f 100644
--- a/src/main/java/org/openelisglobal/result/controller/PatientResultsController.java
+++ b/src/main/java/org/openelisglobal/result/controller/PatientResultsController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/result/controller/StatusResultsController.java b/src/main/java/org/openelisglobal/result/controller/StatusResultsController.java
index 97978b494a..1c1d8fc7a1 100644
--- a/src/main/java/org/openelisglobal/result/controller/StatusResultsController.java
+++ b/src/main/java/org/openelisglobal/result/controller/StatusResultsController.java
@@ -6,8 +6,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/result/controller/rest/LogbookResultsRestController.java b/src/main/java/org/openelisglobal/result/controller/rest/LogbookResultsRestController.java
index 70af67c6da..9928cc4406 100644
--- a/src/main/java/org/openelisglobal/result/controller/rest/LogbookResultsRestController.java
+++ b/src/main/java/org/openelisglobal/result/controller/rest/LogbookResultsRestController.java
@@ -11,7 +11,7 @@
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
diff --git a/src/main/java/org/openelisglobal/result/controller/rest/ResultsRestController.java b/src/main/java/org/openelisglobal/result/controller/rest/ResultsRestController.java
index f4e794665b..bc62bdf913 100644
--- a/src/main/java/org/openelisglobal/result/controller/rest/ResultsRestController.java
+++ b/src/main/java/org/openelisglobal/result/controller/rest/ResultsRestController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.services.DisplayListService;
diff --git a/src/main/java/org/openelisglobal/result/form/AnalyzerResultsForm.java b/src/main/java/org/openelisglobal/result/form/AnalyzerResultsForm.java
index 240e517e92..25204131fe 100644
--- a/src/main/java/org/openelisglobal/result/form/AnalyzerResultsForm.java
+++ b/src/main/java/org/openelisglobal/result/form/AnalyzerResultsForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.result.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import org.openelisglobal.analyzer.service.BidirectionalAnalyzer.LISAction;
import org.openelisglobal.analyzerresults.action.beanitems.AnalyzerResultItem;
import org.openelisglobal.common.form.BaseForm;
diff --git a/src/main/java/org/openelisglobal/result/form/LogbookResultsForm.java b/src/main/java/org/openelisglobal/result/form/LogbookResultsForm.java
index b5b2d3a790..a1029564f6 100644
--- a/src/main/java/org/openelisglobal/result/form/LogbookResultsForm.java
+++ b/src/main/java/org/openelisglobal/result/form/LogbookResultsForm.java
@@ -1,9 +1,9 @@
package org.openelisglobal.result.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.paging.PagingBean;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/result/service/ResultServiceImpl.java b/src/main/java/org/openelisglobal/result/service/ResultServiceImpl.java
index a534318d1d..81a4f87806 100644
--- a/src/main/java/org/openelisglobal/result/service/ResultServiceImpl.java
+++ b/src/main/java/org/openelisglobal/result/service/ResultServiceImpl.java
@@ -6,8 +6,8 @@
import java.util.Comparator;
import java.util.List;
import java.util.UUID;
-import javax.annotation.PostConstruct;
-import org.apache.commons.lang.StringEscapeUtils;
+import jakarta.annotation.PostConstruct;
+import org.apache.commons.text.StringEscapeUtils;
import org.apache.commons.validator.GenericValidator;
import org.json.simple.JSONObject;
import org.openelisglobal.analysis.valueholder.Analysis;
@@ -240,7 +240,7 @@ public String getResultValue(Result result, String separator, boolean printable,
}
}
- return StringEscapeUtils.escapeHtml(reportResult);
+ return StringEscapeUtils.escapeHtml4(reportResult);
} else if (TypeOfTestResultServiceImpl.ResultType.isMultiSelectVariant(getTestType(result))) {
StringBuilder buffer = new StringBuilder();
boolean firstPass = true;
@@ -339,7 +339,7 @@ public String getResultValueForDisplay(Result result, String separator, boolean
}
}
- return StringEscapeUtils.escapeHtml(reportResult);
+ return StringEscapeUtils.escapeHtml4(reportResult);
} else if (TypeOfTestResultServiceImpl.ResultType.isMultiSelectVariant(getTestType(result))) {
StringBuilder buffer = new StringBuilder();
boolean firstPass = true;
diff --git a/src/main/java/org/openelisglobal/resultlimit/service/ResultLimitServiceImpl.java b/src/main/java/org/openelisglobal/resultlimit/service/ResultLimitServiceImpl.java
index 11a9b5dfda..c871da33de 100644
--- a/src/main/java/org/openelisglobal/resultlimit/service/ResultLimitServiceImpl.java
+++ b/src/main/java/org/openelisglobal/resultlimit/service/ResultLimitServiceImpl.java
@@ -8,7 +8,7 @@
import java.util.Comparator;
import java.util.Date;
import java.util.List;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/resultreporting/controller/ResultReportingConfigurationController.java b/src/main/java/org/openelisglobal/resultreporting/controller/ResultReportingConfigurationController.java
index 8085579abc..60bf9ca111 100644
--- a/src/main/java/org/openelisglobal/resultreporting/controller/ResultReportingConfigurationController.java
+++ b/src/main/java/org/openelisglobal/resultreporting/controller/ResultReportingConfigurationController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/resultreporting/controller/rest/ResultReportingConfigurationRestController.java b/src/main/java/org/openelisglobal/resultreporting/controller/rest/ResultReportingConfigurationRestController.java
index e9a1d685a0..a0d29ba3e8 100644
--- a/src/main/java/org/openelisglobal/resultreporting/controller/rest/ResultReportingConfigurationRestController.java
+++ b/src/main/java/org/openelisglobal/resultreporting/controller/rest/ResultReportingConfigurationRestController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/resultreporting/form/ResultReportingConfigurationForm.java b/src/main/java/org/openelisglobal/resultreporting/form/ResultReportingConfigurationForm.java
index 6c466c9475..56fa336a67 100644
--- a/src/main/java/org/openelisglobal/resultreporting/form/ResultReportingConfigurationForm.java
+++ b/src/main/java/org/openelisglobal/resultreporting/form/ResultReportingConfigurationForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.resultreporting.form;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.dataexchange.resultreporting.beans.ReportingConfiguration;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/action/util/ResultValidationPaging.java b/src/main/java/org/openelisglobal/resultvalidation/action/util/ResultValidationPaging.java
index af9c7b5138..67a0f1da70 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/action/util/ResultValidationPaging.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/action/util/ResultValidationPaging.java
@@ -16,7 +16,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.paging.IPageDivider;
import org.openelisglobal.common.paging.IPageFlattener;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/bean/AnalysisItem.java b/src/main/java/org/openelisglobal/resultvalidation/bean/AnalysisItem.java
index b950e45891..91d2c1ad9f 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/bean/AnalysisItem.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/bean/AnalysisItem.java
@@ -16,7 +16,7 @@
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.resultvalidation.form.ResultValidationForm;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationController.java b/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationController.java
index c1218570ac..106cd16f26 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationController.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationController.java
@@ -4,7 +4,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationRangeController.java b/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationRangeController.java
index fcb145183a..0d4ffce67b 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationRangeController.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/controller/AccessionValidationRangeController.java
@@ -11,7 +11,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.action.IActionConstants;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationController.java b/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationController.java
index 1e39e294b4..0ae4bb672d 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationController.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationController.java
@@ -11,7 +11,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.action.IActionConstants;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationRetroCController.java b/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationRetroCController.java
index aa6d8d3b11..a45ebf4d0b 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationRetroCController.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/controller/ResultValidationRetroCController.java
@@ -3,7 +3,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.services.IStatusService;
import org.openelisglobal.common.services.StatusService.AnalysisStatus;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/controller/rest/AccessionValidationRestController.java b/src/main/java/org/openelisglobal/resultvalidation/controller/rest/AccessionValidationRestController.java
index 19093af9e3..e1a9c6d7ee 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/controller/rest/AccessionValidationRestController.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/controller/rest/AccessionValidationRestController.java
@@ -4,7 +4,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.*;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/form/AccessionValidationForm.java b/src/main/java/org/openelisglobal/resultvalidation/form/AccessionValidationForm.java
index 58c23fd4fe..84e0ca7d5b 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/form/AccessionValidationForm.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/form/AccessionValidationForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.resultvalidation.form;
import java.util.List;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.paging.PagingBean;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/form/ResultValidationForm.java b/src/main/java/org/openelisglobal/resultvalidation/form/ResultValidationForm.java
index 45c00fc574..8ae1af3663 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/form/ResultValidationForm.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/form/ResultValidationForm.java
@@ -1,9 +1,9 @@
package org.openelisglobal.resultvalidation.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.paging.PagingBean;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationRetroCIUtility.java b/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationRetroCIUtility.java
index 295d705f4e..2f9262b212 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationRetroCIUtility.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationRetroCIUtility.java
@@ -21,7 +21,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationUtility.java b/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationUtility.java
index 386e813adc..1a63b34988 100644
--- a/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationUtility.java
+++ b/src/main/java/org/openelisglobal/resultvalidation/util/ResultsValidationUtility.java
@@ -25,7 +25,7 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/sample/bean/SampleEditItem.java b/src/main/java/org/openelisglobal/sample/bean/SampleEditItem.java
index 407e756b3c..b3bc1386ce 100644
--- a/src/main/java/org/openelisglobal/sample/bean/SampleEditItem.java
+++ b/src/main/java/org/openelisglobal/sample/bean/SampleEditItem.java
@@ -1,7 +1,7 @@
package org.openelisglobal.sample.bean;
-import javax.validation.constraints.Pattern;
-import javax.validation.groups.Default;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.groups.Default;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.sample.form.SampleEditForm;
diff --git a/src/main/java/org/openelisglobal/sample/bean/SampleOrderItem.java b/src/main/java/org/openelisglobal/sample/bean/SampleOrderItem.java
index e223d00b65..644c98d4a2 100644
--- a/src/main/java/org/openelisglobal/sample/bean/SampleOrderItem.java
+++ b/src/main/java/org/openelisglobal/sample/bean/SampleOrderItem.java
@@ -19,10 +19,10 @@
import java.io.Serializable;
import java.util.Collection;
import java.util.List;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.hl7.fhir.r4.model.QuestionnaireResponse;
import org.openelisglobal.common.formfields.FormFields.Field;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/sample/controller/BaseSampleEntryController.java b/src/main/java/org/openelisglobal/sample/controller/BaseSampleEntryController.java
index 631b0a4c28..6774f67dfd 100644
--- a/src/main/java/org/openelisglobal/sample/controller/BaseSampleEntryController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/BaseSampleEntryController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSException;
diff --git a/src/main/java/org/openelisglobal/sample/controller/SampleEditController.java b/src/main/java/org/openelisglobal/sample/controller/SampleEditController.java
index 1f22aa69ca..4bda52785c 100644
--- a/src/main/java/org/openelisglobal/sample/controller/SampleEditController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/SampleEditController.java
@@ -10,7 +10,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
import org.openelisglobal.analysis.service.AnalysisService;
diff --git a/src/main/java/org/openelisglobal/sample/controller/SampleEntryByProjectController.java b/src/main/java/org/openelisglobal/sample/controller/SampleEntryByProjectController.java
index 678aaf516f..e28e7aa2a3 100644
--- a/src/main/java/org/openelisglobal/sample/controller/SampleEntryByProjectController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/SampleEntryByProjectController.java
@@ -8,8 +8,8 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
diff --git a/src/main/java/org/openelisglobal/sample/controller/SamplePatientEntryController.java b/src/main/java/org/openelisglobal/sample/controller/SamplePatientEntryController.java
index 440d260e1d..99329fe126 100644
--- a/src/main/java/org/openelisglobal/sample/controller/SamplePatientEntryController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/SamplePatientEntryController.java
@@ -6,8 +6,8 @@
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.constraints.Pattern;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
diff --git a/src/main/java/org/openelisglobal/sample/controller/SampleTbEntryController.java b/src/main/java/org/openelisglobal/sample/controller/SampleTbEntryController.java
index 0e499a4611..3f24fa3e41 100644
--- a/src/main/java/org/openelisglobal/sample/controller/SampleTbEntryController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/SampleTbEntryController.java
@@ -7,8 +7,8 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.lang3.ObjectUtils;
import org.hl7.fhir.r4.model.Location;
import org.hl7.fhir.r4.model.Patient;
diff --git a/src/main/java/org/openelisglobal/sample/controller/rest/SampleEditRestController.java b/src/main/java/org/openelisglobal/sample/controller/rest/SampleEditRestController.java
index f9d04fc7d7..3a97d4c347 100644
--- a/src/main/java/org/openelisglobal/sample/controller/rest/SampleEditRestController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/rest/SampleEditRestController.java
@@ -8,7 +8,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
import org.openelisglobal.analysis.service.AnalysisService;
diff --git a/src/main/java/org/openelisglobal/sample/controller/rest/SamplePatientEntryRestController.java b/src/main/java/org/openelisglobal/sample/controller/rest/SamplePatientEntryRestController.java
index 99fabd49d6..3f82d4475f 100644
--- a/src/main/java/org/openelisglobal/sample/controller/rest/SamplePatientEntryRestController.java
+++ b/src/main/java/org/openelisglobal/sample/controller/rest/SamplePatientEntryRestController.java
@@ -6,8 +6,8 @@
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.constraints.Pattern;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.constraints.Pattern;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
diff --git a/src/main/java/org/openelisglobal/sample/daoimpl/DBSearchResultsDAOImpl.java b/src/main/java/org/openelisglobal/sample/daoimpl/DBSearchResultsDAOImpl.java
index a3239052cd..2c533e3488 100644
--- a/src/main/java/org/openelisglobal/sample/daoimpl/DBSearchResultsDAOImpl.java
+++ b/src/main/java/org/openelisglobal/sample/daoimpl/DBSearchResultsDAOImpl.java
@@ -18,8 +18,8 @@
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.Session;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/sample/daoimpl/LuceneSearchResultsDAOImpl.java b/src/main/java/org/openelisglobal/sample/daoimpl/LuceneSearchResultsDAOImpl.java
index 34db90384d..f68f904893 100644
--- a/src/main/java/org/openelisglobal/sample/daoimpl/LuceneSearchResultsDAOImpl.java
+++ b/src/main/java/org/openelisglobal/sample/daoimpl/LuceneSearchResultsDAOImpl.java
@@ -4,9 +4,9 @@
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
-import javax.transaction.Transactional;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
+import jakarta.transaction.Transactional;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.Session;
import org.hibernate.query.Query;
diff --git a/src/main/java/org/openelisglobal/sample/form/ProjectData.java b/src/main/java/org/openelisglobal/sample/form/ProjectData.java
index 56dcfc5bed..b9c6102020 100644
--- a/src/main/java/org/openelisglobal/sample/form/ProjectData.java
+++ b/src/main/java/org/openelisglobal/sample/form/ProjectData.java
@@ -3,8 +3,8 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.dictionary.ObservationHistoryList;
import org.openelisglobal.dictionary.valueholder.Dictionary;
diff --git a/src/main/java/org/openelisglobal/sample/form/SampleEditForm.java b/src/main/java/org/openelisglobal/sample/form/SampleEditForm.java
index a59905c665..ce6cea32db 100644
--- a/src/main/java/org/openelisglobal/sample/form/SampleEditForm.java
+++ b/src/main/java/org/openelisglobal/sample/form/SampleEditForm.java
@@ -1,9 +1,9 @@
package org.openelisglobal.sample.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
diff --git a/src/main/java/org/openelisglobal/sample/form/SampleEntryByProjectForm.java b/src/main/java/org/openelisglobal/sample/form/SampleEntryByProjectForm.java
index 4e991a2e91..6db7252af9 100644
--- a/src/main/java/org/openelisglobal/sample/form/SampleEntryByProjectForm.java
+++ b/src/main/java/org/openelisglobal/sample/form/SampleEntryByProjectForm.java
@@ -2,11 +2,11 @@
import java.util.List;
import java.util.Map;
-import javax.validation.Valid;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.constraints.Size;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.provider.validation.AccessionNumberValidatorFactory.AccessionFormat;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/sample/form/SamplePatientEntryForm.java b/src/main/java/org/openelisglobal/sample/form/SamplePatientEntryForm.java
index 3dae6f2cb1..2f842b1a2e 100644
--- a/src/main/java/org/openelisglobal/sample/form/SamplePatientEntryForm.java
+++ b/src/main/java/org/openelisglobal/sample/form/SamplePatientEntryForm.java
@@ -2,9 +2,9 @@
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/sample/form/SampleTbEntryForm.java b/src/main/java/org/openelisglobal/sample/form/SampleTbEntryForm.java
index 6e4a836d3a..329f86109e 100644
--- a/src/main/java/org/openelisglobal/sample/form/SampleTbEntryForm.java
+++ b/src/main/java/org/openelisglobal/sample/form/SampleTbEntryForm.java
@@ -1,10 +1,10 @@
package org.openelisglobal.sample.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotEmpty;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
diff --git a/src/main/java/org/openelisglobal/sample/service/PatientManagementUpdate.java b/src/main/java/org/openelisglobal/sample/service/PatientManagementUpdate.java
index 860cc34c8f..7904e64e02 100644
--- a/src/main/java/org/openelisglobal/sample/service/PatientManagementUpdate.java
+++ b/src/main/java/org/openelisglobal/sample/service/PatientManagementUpdate.java
@@ -5,8 +5,8 @@
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.address.service.AddressPartService;
diff --git a/src/main/java/org/openelisglobal/sample/service/SampleEditService.java b/src/main/java/org/openelisglobal/sample/service/SampleEditService.java
index b6e152ee15..11379a18e2 100644
--- a/src/main/java/org/openelisglobal/sample/service/SampleEditService.java
+++ b/src/main/java/org/openelisglobal/sample/service/SampleEditService.java
@@ -1,6 +1,6 @@
package org.openelisglobal.sample.service;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.sample.form.SampleEditForm;
import org.openelisglobal.sample.valueholder.Sample;
diff --git a/src/main/java/org/openelisglobal/sample/service/SampleEditServiceImpl.java b/src/main/java/org/openelisglobal/sample/service/SampleEditServiceImpl.java
index d0f925c5bf..df17b004b4 100644
--- a/src/main/java/org/openelisglobal/sample/service/SampleEditServiceImpl.java
+++ b/src/main/java/org/openelisglobal/sample/service/SampleEditServiceImpl.java
@@ -2,7 +2,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryService.java b/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryService.java
index 2caee74d51..3c9e6429ff 100644
--- a/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryService.java
+++ b/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryService.java
@@ -1,6 +1,6 @@
package org.openelisglobal.sample.service;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.patient.action.bean.PatientManagementInfo;
import org.openelisglobal.sample.action.util.SamplePatientUpdateData;
import org.openelisglobal.sample.form.SamplePatientEntryForm;
diff --git a/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryServiceImpl.java b/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryServiceImpl.java
index c49ef50f49..eeb322e556 100644
--- a/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryServiceImpl.java
+++ b/src/main/java/org/openelisglobal/sample/service/SamplePatientEntryServiceImpl.java
@@ -4,7 +4,7 @@
import java.util.List;
import java.util.Optional;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.address.service.OrganizationAddressService;
import org.openelisglobal.address.valueholder.OrganizationAddress;
diff --git a/src/main/java/org/openelisglobal/sample/service/SampleServiceImpl.java b/src/main/java/org/openelisglobal/sample/service/SampleServiceImpl.java
index 553a7975c5..7a1efaf94f 100644
--- a/src/main/java/org/openelisglobal/sample/service/SampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/sample/service/SampleServiceImpl.java
@@ -6,7 +6,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/sample/service/TbSampleService.java b/src/main/java/org/openelisglobal/sample/service/TbSampleService.java
index 514d9db836..c8d481445f 100644
--- a/src/main/java/org/openelisglobal/sample/service/TbSampleService.java
+++ b/src/main/java/org/openelisglobal/sample/service/TbSampleService.java
@@ -1,6 +1,6 @@
package org.openelisglobal.sample.service;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.sample.form.SampleTbEntryForm;
public interface TbSampleService {
diff --git a/src/main/java/org/openelisglobal/sample/service/TbSampleServiceImpl.java b/src/main/java/org/openelisglobal/sample/service/TbSampleServiceImpl.java
index 8ba1eb5c7c..e507e0c0f5 100644
--- a/src/main/java/org/openelisglobal/sample/service/TbSampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/sample/service/TbSampleServiceImpl.java
@@ -3,7 +3,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.ObjectUtils;
import org.openelisglobal.address.service.AddressPartService;
import org.openelisglobal.address.service.PersonAddressService;
diff --git a/src/main/java/org/openelisglobal/sample/util/CI/BaseProjectFormMapper.java b/src/main/java/org/openelisglobal/sample/util/CI/BaseProjectFormMapper.java
index 656a5741dd..7c87058888 100644
--- a/src/main/java/org/openelisglobal/sample/util/CI/BaseProjectFormMapper.java
+++ b/src/main/java/org/openelisglobal/sample/util/CI/BaseProjectFormMapper.java
@@ -21,7 +21,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.dictionary.ObservationHistoryList;
import org.openelisglobal.observationhistory.valueholder.ObservationHistory;
@@ -385,7 +385,7 @@ public boolean getShouldPopulatePatient() {
/**
* ?type=xxxxx specifies how we are using a study form.
*
- * @see org.openelisglobal.sample.util.CI.IProjectFormMapper#isSecondEntry(javax.servlet.http.HttpServletRequest)
+ * @see org.openelisglobal.sample.util.CI.IProjectFormMapper#isSecondEntry(jakarta.servlet.http.HttpServletRequest)
*/
@Override
public boolean isSecondEntry(HttpServletRequest request) {
diff --git a/src/main/java/org/openelisglobal/sample/util/CI/IProjectFormMapper.java b/src/main/java/org/openelisglobal/sample/util/CI/IProjectFormMapper.java
index 67db13da72..894db5bbb1 100644
--- a/src/main/java/org/openelisglobal/sample/util/CI/IProjectFormMapper.java
+++ b/src/main/java/org/openelisglobal/sample/util/CI/IProjectFormMapper.java
@@ -18,7 +18,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.observationhistory.valueholder.ObservationHistory;
import org.openelisglobal.patient.valueholder.ObservationData;
import org.openelisglobal.sample.form.ProjectData;
diff --git a/src/main/java/org/openelisglobal/sample/valueholder/SampleAdditionalField.java b/src/main/java/org/openelisglobal/sample/valueholder/SampleAdditionalField.java
index 0f5aa5aac8..aa7c18e2c9 100644
--- a/src/main/java/org/openelisglobal/sample/valueholder/SampleAdditionalField.java
+++ b/src/main/java/org/openelisglobal/sample/valueholder/SampleAdditionalField.java
@@ -2,17 +2,17 @@
import java.io.Serializable;
import java.util.Objects;
-import javax.persistence.Column;
-import javax.persistence.Convert;
-import javax.persistence.Embeddable;
-import javax.persistence.EmbeddedId;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.MapsId;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Convert;
+import jakarta.persistence.Embeddable;
+import jakarta.persistence.EmbeddedId;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.MapsId;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.hibernate.converter.StringToIntegerConverter;
import org.openelisglobal.sample.valueholder.SampleAdditionalField.SampleAdditionalFieldId;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryByProjectController.java b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryByProjectController.java
index ca0acd46d1..928b798117 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryByProjectController.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryByProjectController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.samplebatchentry.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.validator.BaseErrors;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryController.java b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryController.java
index e917314f9a..c5a39d4c87 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryController.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntryController.java
@@ -2,8 +2,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.StringTokenizer;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntrySetupController.java b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntrySetupController.java
index dcc3bd0e17..8441da0b3c 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntrySetupController.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/controller/SampleBatchEntrySetupController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.samplebatchentry.controller;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.formfields.FormFields;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntryRestController.java b/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntryRestController.java
index c5587cc349..6615e8f108 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntryRestController.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntryRestController.java
@@ -2,7 +2,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.StringTokenizer;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntrySetupRestController.java b/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntrySetupRestController.java
index f139a61f49..1634d1947b 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntrySetupRestController.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/controller/rest/SampleBatchEntrySetupRestController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.samplebatchentry.controller.rest;
import java.lang.reflect.InvocationTargetException;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.formfields.FormFields;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/samplebatchentry/form/SampleBatchEntryForm.java b/src/main/java/org/openelisglobal/samplebatchentry/form/SampleBatchEntryForm.java
index 287a2d124e..5781dcabc4 100644
--- a/src/main/java/org/openelisglobal/samplebatchentry/form/SampleBatchEntryForm.java
+++ b/src/main/java/org/openelisglobal/samplebatchentry/form/SampleBatchEntryForm.java
@@ -3,8 +3,8 @@
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.util.List;
import java.util.Map;
-import javax.validation.Valid;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.util.validator.CustomDateValidator.DateRelation;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/sampleitem/service/SampleItemServiceImpl.java b/src/main/java/org/openelisglobal/sampleitem/service/SampleItemServiceImpl.java
index 9448ae95aa..518176e19c 100644
--- a/src/main/java/org/openelisglobal/sampleitem/service/SampleItemServiceImpl.java
+++ b/src/main/java/org/openelisglobal/sampleitem/service/SampleItemServiceImpl.java
@@ -3,7 +3,7 @@
import java.util.List;
import java.util.Set;
import java.util.UUID;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
import org.openelisglobal.referencetables.service.ReferenceTablesService;
import org.openelisglobal.sampleitem.dao.SampleItemDAO;
diff --git a/src/main/java/org/openelisglobal/scheduler/independentthreads/MalariaResultExporter.java b/src/main/java/org/openelisglobal/scheduler/independentthreads/MalariaResultExporter.java
index 6617221b1a..dc0fbae4ac 100644
--- a/src/main/java/org/openelisglobal/scheduler/independentthreads/MalariaResultExporter.java
+++ b/src/main/java/org/openelisglobal/scheduler/independentthreads/MalariaResultExporter.java
@@ -14,7 +14,7 @@
package org.openelisglobal.scheduler.independentthreads;
import java.util.List;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.ConfigurationProperties.Property;
import org.openelisglobal.dataexchange.aggregatereporting.valueholder.ReportExternalExport;
diff --git a/src/main/java/org/openelisglobal/scheduler/independentthreads/ResultExporter.java b/src/main/java/org/openelisglobal/scheduler/independentthreads/ResultExporter.java
index 0a763fe136..c036c43f05 100644
--- a/src/main/java/org/openelisglobal/scheduler/independentthreads/ResultExporter.java
+++ b/src/main/java/org/openelisglobal/scheduler/independentthreads/ResultExporter.java
@@ -16,8 +16,8 @@
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/scheduler/independentthreads/SuccessReportHandler.java b/src/main/java/org/openelisglobal/scheduler/independentthreads/SuccessReportHandler.java
index 23a23564af..3863564609 100644
--- a/src/main/java/org/openelisglobal/scheduler/independentthreads/SuccessReportHandler.java
+++ b/src/main/java/org/openelisglobal/scheduler/independentthreads/SuccessReportHandler.java
@@ -16,7 +16,7 @@
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/scheduler/independentthreads/TestUsageBacklog.java b/src/main/java/org/openelisglobal/scheduler/independentthreads/TestUsageBacklog.java
index 21160038ea..aa51c5c6ea 100644
--- a/src/main/java/org/openelisglobal/scheduler/independentthreads/TestUsageBacklog.java
+++ b/src/main/java/org/openelisglobal/scheduler/independentthreads/TestUsageBacklog.java
@@ -19,7 +19,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.json.simple.JSONObject;
import org.openelisglobal.analysis.service.AnalysisService;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/search/service/LuceneSearchResultsServiceImpl.java b/src/main/java/org/openelisglobal/search/service/LuceneSearchResultsServiceImpl.java
index 3949cbac83..0e149f9c7f 100644
--- a/src/main/java/org/openelisglobal/search/service/LuceneSearchResultsServiceImpl.java
+++ b/src/main/java/org/openelisglobal/search/service/LuceneSearchResultsServiceImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.search.service;
import java.util.List;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.openelisglobal.common.provider.query.PatientSearchResults;
import org.openelisglobal.sample.dao.SearchResultsDAO;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/src/main/java/org/openelisglobal/security/CORSFilter.java b/src/main/java/org/openelisglobal/security/CORSFilter.java
index 0106a9cf0c..c6262047aa 100644
--- a/src/main/java/org/openelisglobal/security/CORSFilter.java
+++ b/src/main/java/org/openelisglobal/security/CORSFilter.java
@@ -1,26 +1,24 @@
package org.openelisglobal.security;
import java.io.IOException;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+
+import org.openelisglobal.common.log.LogEvent;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
@Order(Ordered.HIGHEST_PRECEDENCE)
public class CORSFilter implements Filter {
- private final Logger log = LoggerFactory.getLogger(CORSFilter.class);
-
public CORSFilter() {
- log.info("CORSFilter init");
+ LogEvent.logInfo(this.getClass().getSimpleName(), "CORSFilter", "CORSFilter init");
}
@Override
diff --git a/src/main/java/org/openelisglobal/security/SecurityConfig.java b/src/main/java/org/openelisglobal/security/SecurityConfig.java
index 76c32d15db..a4d93b5275 100644
--- a/src/main/java/org/openelisglobal/security/SecurityConfig.java
+++ b/src/main/java/org/openelisglobal/security/SecurityConfig.java
@@ -14,11 +14,14 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
+
+import jakarta.servlet.DispatcherType;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.jasypt.util.text.AES256TextEncryptor;
import org.jasypt.util.text.TextEncryptor;
+import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.config.condition.ConditionalOnProperty;
import org.openelisglobal.security.KeystoreUtil.KeyCertPair;
import org.openelisglobal.security.login.BasicAuthFilter;
@@ -36,6 +39,7 @@
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
+import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.core.convert.converter.Converter;
import org.springframework.core.io.Resource;
@@ -43,11 +47,11 @@
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.authentication.ProviderManager;
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
+import org.springframework.security.config.Customizer;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.authentication.configuration.AuthenticationConfiguration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
-import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.core.AuthenticatedPrincipal;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
@@ -72,6 +76,7 @@
import org.springframework.security.saml2.provider.service.registration.RelyingPartyRegistration;
import org.springframework.security.saml2.provider.service.registration.RelyingPartyRegistrationRepository;
import org.springframework.security.saml2.provider.service.registration.RelyingPartyRegistrations;
+import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.authentication.AuthenticationFailureHandler;
import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
import org.springframework.security.web.authentication.logout.LogoutSuccessHandler;
@@ -83,6 +88,7 @@
import org.springframework.web.multipart.support.MultipartFilter;
@EnableWebSecurity
+@Configuration
public class SecurityConfig {
// TODO should we move these to the properties files?
@@ -122,34 +128,32 @@ public AuthenticationManager authenticationManager(AuthenticationConfiguration a
return authenticationConfiguration.getAuthenticationManager();
}
- @Configuration
+ @Bean
@Order(1)
- public static class openSecurityConfiguration extends WebSecurityConfigurerAdapter {
- @Override
- protected void configure(HttpSecurity http) throws Exception {
- CharacterEncodingFilter filter = new CharacterEncodingFilter();
+ public SecurityFilterChain openSecurityFilterChain(HttpSecurity http) throws Exception {
+ CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF-8");
filter.setForceEncoding(true);
http.addFilterBefore(filter, CsrfFilter.class);
MultipartFilter multipartFilter = new MultipartFilter();
multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
http.addFilterBefore(multipartFilter, CsrfFilter.class);
-
- // for all requests going to open pages, use this security configuration
- http.requestMatchers().antMatchers(OPEN_PAGES).and().authorizeRequests().anyRequest().permitAll().and()
- // disable csrf as it is not needed for open pages
- .csrf().disable().headers().frameOptions().sameOrigin()
- .contentSecurityPolicy(CONTENT_SECURITY_POLICY);
- }
+
+ // for all requests going to open pages, use this security configuration
+ http.securityMatcher(OPEN_PAGES).authorizeHttpRequests(auth -> auth
+ .dispatcherTypeMatchers(DispatcherType.FORWARD, DispatcherType.INCLUDE, DispatcherType.ERROR).permitAll()
+ .anyRequest().permitAll())
+ // disable csrf as it is not needed for open pages
+ .csrf(csrf -> csrf.disable()).headers(headers -> headers.frameOptions().sameOrigin()
+ .contentSecurityPolicy(CONTENT_SECURITY_POLICY));
+ return http.build();
}
+
- @Configuration
+ @Bean
@Order(2)
@ConditionalOnProperty(property = "org.itech.login.basic", havingValue = "true", matchIfMissing = true)
- public static class httpBasicServletSecurityConfiguration extends WebSecurityConfigurerAdapter {
-
- @Override
- protected void configure(HttpSecurity http) throws Exception {
+ public SecurityFilterChain httpBasicServletFilterChain(HttpSecurity http) throws Exception {
CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF-8");
filter.setForceEncoding(true);
@@ -158,23 +162,18 @@ protected void configure(HttpSecurity http) throws Exception {
multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
http.addFilterBefore(multipartFilter, CsrfFilter.class);
// for all requests going to a http basic page, use this security configuration
- http.requestMatcher(new BasicAuthRequestedMatcher()).authorizeRequests().anyRequest()
+ http.securityMatcher(new BasicAuthRequestedMatcher()).authorizeHttpRequests(auth -> auth.anyRequest().authenticated())
// ensure they are authenticated
- .authenticated().and()
// ensure they authenticate with http basic
- .httpBasic().and()
+ .httpBasic(Customizer.withDefaults())
// disable csrf as it is not needed for httpBasic
- .csrf().disable() //
+ .csrf(csrf -> csrf.disable()) //
+
.addFilterAt(SpringContext.getBean(BasicAuthFilter.class), BasicAuthenticationFilter.class)
// add security headers
- .headers().frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY);
+ .headers(headers -> headers.frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY));
+ return http.build();
}
- }
-
- @Configuration
- @Order(3)
- @ConditionalOnProperty(property = "org.itech.login.saml", havingValue = "true")
- public static class samlSecurityConfiguration extends WebSecurityConfigurerAdapter {
@Value("${org.itech.login.saml.registrationId:keycloak}")
private String registrationId;
@@ -201,13 +200,19 @@ public static class samlSecurityConfiguration extends WebSecurityConfigurerAdapt
private String idpVerificationCertificateLocation;
@Bean("samlRelyingPartyRegistrationRepository")
- public RelyingPartyRegistrationRepository relyingPartyRegistrationRepository() throws KeyStoreException,
- CertificateException, NoSuchAlgorithmException, IOException, UnrecoverableKeyException {
+ @ConditionalOnProperty(property = "org.itech.login.saml", havingValue = "true")
+ public RelyingPartyRegistrationRepository relyingPartyRegistrationRepository() {
RelyingPartyRegistration relyingPartyRegistration;
final String acsUrlTemplate = "{baseUrl}/login/saml2/sso/{registrationId}";
- KeyStore keystore = KeystoreUtil.readKeyStoreFile(keyStore, keyStorePassword.toCharArray());
- KeyCertPair keyCert = KeystoreUtil.getKeyCertFromKeystore(keystore, keyStorePassword.toCharArray());
+ KeyCertPair keyCert;
+ try {
+ KeyStore keystore = KeystoreUtil.readKeyStoreFile(keyStore, keyStorePassword.toCharArray());
+ keyCert = KeystoreUtil.getKeyCertFromKeystore(keystore, keyStorePassword.toCharArray());
+ } catch (UnrecoverableKeyException | CertificateException | NoSuchAlgorithmException | KeyStoreException
+ | IOException e) {
+ throw new LIMSRuntimeException(e);
+ }
Saml2X509Credential credential = Saml2X509Credential.signing(keyCert.getKey(),
(X509Certificate) keyCert.getCert());
if (GenericValidator.isBlankOrNull(metadata)) {
@@ -243,101 +248,113 @@ public RelyingPartyRegistrationRepository relyingPartyRegistrationRepository() t
return new InMemoryRelyingPartyRegistrationRepository(relyingPartyRegistration);
}
- @Override
- protected void configure(HttpSecurity http) throws Exception {
- CharacterEncodingFilter filter = new CharacterEncodingFilter();
- filter.setEncoding("UTF-8");
- filter.setForceEncoding(true);
- http.addFilterBefore(filter, CsrfFilter.class);
- MultipartFilter multipartFilter = new MultipartFilter();
- multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
- http.addFilterBefore(multipartFilter, CsrfFilter.class);
- OpenSaml4AuthenticationProvider authenticationProvider = new OpenSaml4AuthenticationProvider();
- Converter delegate = OpenSaml4AuthenticationProvider
- .createDefaultResponseAuthenticationConverter();
- authenticationProvider
- .setAssertionValidator(OpenSaml4AuthenticationProvider.createDefaultAssertionValidator());
- authenticationProvider.setResponseAuthenticationConverter(responseToken -> {
-
- Saml2Authentication authentication = delegate.convert(responseToken);
- Assertion assertion = responseToken.getResponse().getAssertions().get(0);
- AuthenticatedPrincipal principal = (AuthenticatedPrincipal) authentication.getPrincipal();
- Collection authorities = new KeycloakAuthoritiesExtractor().convert(assertion);
-
- return new Saml2Authentication(principal, authentication.getSaml2Response(), authorities);
- });
- Converter validator = OpenSaml4AuthenticationProvider
- .createDefaultAssertionValidator();
- authenticationProvider.setAssertionValidator(validator);
- http.requestMatcher(new SamlRequestedMatcher()).authorizeRequests().anyRequest().authenticated().and()
- .saml2Logout().and().saml2Login().authenticationManager(new ProviderManager(authenticationProvider))
- .failureHandler(customAuthenticationFailureHandler())
- .successHandler(customAuthenticationSuccessHandler())
- .relyingPartyRegistrationRepository(relyingPartyRegistrationRepository());
- }
-
@Bean("samlAuthenticationSuccessHandler")
- public AuthenticationSuccessHandler customAuthenticationSuccessHandler() {
+ @ConditionalOnProperty(property = "org.itech.login.saml", havingValue = "true")
+ public AuthenticationSuccessHandler customSamlAuthenticationSuccessHandler() {
return new CustomSSOAuthenticationSuccessHandler();
}
@Bean("samlAuthenticationFailureHandler")
- public AuthenticationFailureHandler customAuthenticationFailureHandler() {
+ @ConditionalOnProperty(property = "org.itech.login.saml", havingValue = "true")
+ public AuthenticationFailureHandler customSamlAuthenticationFailureHandler() {
return new CustomAuthenticationFailureHandler();
}
+
+
+ @Bean
+ @Order(3)
+ @ConditionalOnProperty(property = "org.itech.login.saml", havingValue = "true")
+ public SecurityFilterChain samlSecurityFilterChain(HttpSecurity http) throws Exception {
+ CharacterEncodingFilter filter = new CharacterEncodingFilter();
+ filter.setEncoding("UTF-8");
+ filter.setForceEncoding(true);
+ http.addFilterBefore(filter, CsrfFilter.class);
+ MultipartFilter multipartFilter = new MultipartFilter();
+ multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
+ http.addFilterBefore(multipartFilter, CsrfFilter.class);
+ OpenSaml4AuthenticationProvider authenticationProvider = new OpenSaml4AuthenticationProvider();
+ Converter delegate = OpenSaml4AuthenticationProvider
+ .createDefaultResponseAuthenticationConverter();
+ authenticationProvider
+ .setAssertionValidator(OpenSaml4AuthenticationProvider.createDefaultAssertionValidator());
+ authenticationProvider.setResponseAuthenticationConverter(responseToken -> {
+
+ Saml2Authentication authentication = delegate.convert(responseToken);
+ Assertion assertion = responseToken.getResponse().getAssertions().get(0);
+ AuthenticatedPrincipal principal = (AuthenticatedPrincipal) authentication.getPrincipal();
+ Collection authorities = new KeycloakAuthoritiesExtractor().convert(assertion);
+
+ return new Saml2Authentication(principal, authentication.getSaml2Response(), authorities);
+ });
+ Converter validator = OpenSaml4AuthenticationProvider
+ .createDefaultAssertionValidator();
+ authenticationProvider.setAssertionValidator(validator);
+ http.securityMatcher(new SamlRequestedMatcher()).authorizeHttpRequests(auth -> auth
+ .anyRequest().authenticated())
+ .saml2Logout(saml2 -> saml2.logoutUrl("/Logout"))
+ .saml2Login(saml2 -> saml2
+ .failureHandler(customSamlAuthenticationFailureHandler())
+ .successHandler(customSamlAuthenticationSuccessHandler())
+ .relyingPartyRegistrationRepository(relyingPartyRegistrationRepository()))
+ .authenticationManager(new ProviderManager(authenticationProvider))
+
+
+ ;
+ return http.build();
}
- @Configuration
- @Order(4)
- @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
- public static class openidSecurityConfiguration extends WebSecurityConfigurerAdapter {
- @Value("${org.itech.login.oauth.config:}")
- private String config;
- @Value("${org.itech.login.oauth.clientID:OpenELIS-Global_oauth}")
+ @Value("${org.itech.login.oauth.config:}")
+ private String config;
- private String clientID;
+ @Value("${org.itech.login.oauth.clientID:OpenELIS-Global_oauth}")
- @Value("${org.itech.login.oauth.clientSecret:}")
- private String clientSecret;
+ private String clientID;
- private ClientRegistration clientRegistrationFromConfig(String config) {
- return ClientRegistrations.fromOidcIssuerLocation(config).clientId(clientID).clientSecret(clientSecret)
- .build();
- }
+ @Value("${org.itech.login.oauth.clientSecret:}")
+ private String clientSecret;
- @Bean("oauthClientRegistrationRepository")
- public ClientRegistrationRepository clientRegistrationRepository() {
- List registrations = new ArrayList<>();
+ private ClientRegistration clientRegistrationFromConfig(String config) {
+ return ClientRegistrations.fromOidcIssuerLocation(config).clientId(clientID).clientSecret(clientSecret)
+ .build();
+ }
- if (!GenericValidator.isBlankOrNull(config)) {
- registrations.add(clientRegistrationFromConfig(config));
- }
- return new InMemoryClientRegistrationRepository(registrations);
- }
+ @Bean("oauthClientRegistrationRepository")
+ @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
+ public ClientRegistrationRepository clientRegistrationRepository() {
+ List registrations = new ArrayList<>();
- @Override
- protected void configure(HttpSecurity http) throws Exception {
- CharacterEncodingFilter filter = new CharacterEncodingFilter();
- filter.setEncoding("UTF-8");
- filter.setForceEncoding(true);
- http.addFilterBefore(filter, CsrfFilter.class);
- MultipartFilter multipartFilter = new MultipartFilter();
- multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
- http.addFilterBefore(multipartFilter, CsrfFilter.class);
- // for all requests going to a http basic page, use this security configuration
- http.requestMatcher(new OAuthRequestedMatcher()).authorizeRequests().anyRequest()
- // ensure they are authenticated
- .authenticated().and() //
- .oauth2Login().clientRegistrationRepository(clientRegistrationRepository()) //
- .authorizedClientService(authorizedClientService())
- .failureHandler(customAuthenticationFailureHandler())
- .successHandler(customAuthenticationSuccessHandler()).and()
- .logout(logout -> logout.logoutSuccessHandler(oidcLogoutSuccessHandler()))
- // add security headers
- .headers().frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY);
+ if (!GenericValidator.isBlankOrNull(config)) {
+ registrations.add(clientRegistrationFromConfig(config));
}
+ return new InMemoryClientRegistrationRepository(registrations);
+ }
+
+ @Bean
+ @Order(4)
+ @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
+ public SecurityFilterChain openidSecurityFilterChain(HttpSecurity http) throws Exception {
+ CharacterEncodingFilter filter = new CharacterEncodingFilter();
+ filter.setEncoding("UTF-8");
+ filter.setForceEncoding(true);
+ http.addFilterBefore(filter, CsrfFilter.class);
+ MultipartFilter multipartFilter = new MultipartFilter();
+ multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
+ http.addFilterBefore(multipartFilter, CsrfFilter.class);
+ // for all requests going to a http basic page, use this security configuration
+ http.securityMatcher(new OAuthRequestedMatcher())
+ .authorizeHttpRequests(auth -> auth
+ .anyRequest().authenticated()
+ )
+ .oauth2Login(oAuth -> oAuth.clientRegistrationRepository(clientRegistrationRepository()).authorizedClientService(authorizedClientService())
+ .failureHandler(customOAuthAuthenticationFailureHandler()).successHandler(customOAuthAuthenticationSuccessHandler())) //
+ .logout(logout -> logout.logoutSuccessHandler(oidcLogoutSuccessHandler()))
+ // add security headers
+ .headers(headers -> headers.frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY));
+ return http.build();
+ }
+
private LogoutSuccessHandler oidcLogoutSuccessHandler() {
OidcClientInitiatedLogoutSuccessHandler oidcLogoutSuccessHandler = new OidcClientInitiatedLogoutSuccessHandler(
@@ -346,47 +363,46 @@ private LogoutSuccessHandler oidcLogoutSuccessHandler() {
}
@Bean
+ @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
public OAuth2AuthorizedClientService authorizedClientService() {
return new InMemoryOAuth2AuthorizedClientService(clientRegistrationRepository());
}
@Bean("oauthAuthenticationSuccessHandler")
- public AuthenticationSuccessHandler customAuthenticationSuccessHandler() {
+ @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
+ public AuthenticationSuccessHandler customOAuthAuthenticationSuccessHandler() {
return new CustomFormAuthenticationSuccessHandler();
}
@Bean("oauthAuthenticationFailureHandler")
- public AuthenticationFailureHandler customAuthenticationFailureHandler() {
+ @ConditionalOnProperty(property = "org.itech.login.oauth", havingValue = "true")
+ public AuthenticationFailureHandler customOAuthAuthenticationFailureHandler() {
return new CustomAuthenticationFailureHandler();
}
- }
- @Configuration
+ @Bean
@Order(5)
@ConditionalOnProperty(property = "org.itech.login.certificate", havingValue = "true")
- public static class clientCertificateSecurityConfiguration extends WebSecurityConfigurerAdapter {
- @Override
- protected void configure(HttpSecurity http) throws Exception {
+ public SecurityFilterChain clientCertificateSecurityFilterChain(HttpSecurity http) throws Exception {
CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF-8");
filter.setForceEncoding(true);
http.addFilterBefore(filter, CsrfFilter.class);
- http.requestMatcher(new CertificateAuthRequestedMatcher()).authorizeRequests().anyRequest()
- // ensure they are authenticated
- .authenticated().and().x509().subjectPrincipalRegex("CN=(.*?)(?:,|$)")
- .userDetailsService(SpringContext.getBean(UserDetailsService.class)).and()
- // disable csrf as it is not needed for httpBasic
- .csrf().disable();
+ http.securityMatcher(new CertificateAuthRequestedMatcher())
+ .authorizeHttpRequests(auth -> auth
+ .anyRequest().authenticated())
+ .x509(x509 -> x509.subjectPrincipalRegex("CN=(.*?)(?:,|$)"))
+ .userDetailsService(SpringContext.getBean(UserDetailsService.class))
+ .csrf().disable();
+ return http.build();
}
- }
+
- @Configuration
+ @Bean
@ConditionalOnProperty(property = "org.itech.login.form", havingValue = "true", matchIfMissing = true)
- public static class defaultSecurityConfiguration extends WebSecurityConfigurerAdapter {
-
- @Override
- protected void configure(HttpSecurity http) throws Exception {
+ @Order(Ordered.LOWEST_PRECEDENCE)
+ public SecurityFilterChain defaultSecurityConfigurationFilterChain(HttpSecurity http) throws Exception {
CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF-8");
filter.setForceEncoding(true);
@@ -394,22 +410,29 @@ protected void configure(HttpSecurity http) throws Exception {
MultipartFilter multipartFilter = new MultipartFilter();
multipartFilter.setServletContext(SpringContext.getBean(ServletContext.class));
http.addFilterBefore(multipartFilter, CsrfFilter.class);
- http.authorizeRequests()
+ http.authorizeHttpRequests(auth -> auth
// allow all users to access these pages no matter authentication status
- .antMatchers(LOGIN_PAGES).permitAll().antMatchers(RESOURCE_PAGES).permitAll()
+ .dispatcherTypeMatchers(DispatcherType.FORWARD, DispatcherType.INCLUDE, DispatcherType.ERROR).permitAll()
+ .requestMatchers(LOGIN_PAGES).permitAll()
+ .requestMatchers(RESOURCE_PAGES).permitAll()
// ensure all other requests are authenticated
- .anyRequest().authenticated().and()
+ .anyRequest().authenticated()
+
+ )
// setup login redirection and logic
- .formLogin().loginPage("/LoginPage").permitAll().loginProcessingUrl("/ValidateLogin")
- .usernameParameter("loginName").passwordParameter("password")
- .failureHandler(customAuthenticationFailureHandler())
- .successHandler(customAuthenticationSuccessHandler()).and()
+ .formLogin(formLogin -> formLogin
+ .loginPage("/LoginPage")
+ .loginProcessingUrl("/ValidateLogin")
+ .usernameParameter("loginName").passwordParameter("password")
+ .failureHandler(customAuthenticationFailureHandler())
+ .successHandler(customAuthenticationSuccessHandler()))
// setup logout
- .logout().logoutUrl("/Logout").logoutSuccessUrl("/LoginPage").invalidateHttpSession(true).and()
- .sessionManagement().invalidSessionUrl("/LoginPage").sessionFixation().migrateSession().and().csrf()
- .ignoringAntMatchers("/ValidateLogin").and()
+ .logout(logout -> logout.logoutUrl("/Logout").logoutSuccessUrl("/LoginPage").invalidateHttpSession(true))
+ .sessionManagement(sessionManagement -> sessionManagement.invalidSessionUrl("/LoginPage").sessionFixation().migrateSession())
+ .csrf(csrf ->csrf.ignoringRequestMatchers("/ValidateLogin"))
// add security headers
- .headers().frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY);
+ .headers(headers -> headers.frameOptions().sameOrigin().contentSecurityPolicy(CONTENT_SECURITY_POLICY));
+ return http.build();
}
@Bean
@@ -422,7 +445,7 @@ public AuthenticationFailureHandler customAuthenticationFailureHandler() {
public AuthenticationSuccessHandler customAuthenticationSuccessHandler() {
return new CustomFormAuthenticationSuccessHandler();
}
- }
+
// @Bean
// public static UserDetailsService allowAllUserDetailsService() {
diff --git a/src/main/java/org/openelisglobal/security/SecurityFilter.java b/src/main/java/org/openelisglobal/security/SecurityFilter.java
index c6c699326b..9c34d7c073 100644
--- a/src/main/java/org/openelisglobal/security/SecurityFilter.java
+++ b/src/main/java/org/openelisglobal/security/SecurityFilter.java
@@ -3,14 +3,14 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.Enumeration;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.common.util.StringUtil;
diff --git a/src/main/java/org/openelisglobal/security/converter/EncryptionConverter.java b/src/main/java/org/openelisglobal/security/converter/EncryptionConverter.java
index b4ac3633ab..6a28498a4b 100644
--- a/src/main/java/org/openelisglobal/security/converter/EncryptionConverter.java
+++ b/src/main/java/org/openelisglobal/security/converter/EncryptionConverter.java
@@ -1,7 +1,7 @@
package org.openelisglobal.security.converter;
-import javax.persistence.AttributeConverter;
-import javax.persistence.Converter;
+import jakarta.persistence.AttributeConverter;
+import jakarta.persistence.Converter;
import org.apache.commons.validator.GenericValidator;
import org.jasypt.util.text.TextEncryptor;
import org.openelisglobal.spring.util.SpringContext;
diff --git a/src/main/java/org/openelisglobal/security/login/BasicAuthFilter.java b/src/main/java/org/openelisglobal/security/login/BasicAuthFilter.java
index 3066ef4554..3faa074d2c 100644
--- a/src/main/java/org/openelisglobal/security/login/BasicAuthFilter.java
+++ b/src/main/java/org/openelisglobal/security/login/BasicAuthFilter.java
@@ -3,7 +3,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.login.service.LoginUserService;
@@ -38,8 +38,8 @@ public BasicAuthFilter(AuthenticationManager authenticationManager) {
}
@Override
- protected void onSuccessfulAuthentication(javax.servlet.http.HttpServletRequest request,
- javax.servlet.http.HttpServletResponse response, Authentication authResult) {
+ protected void onSuccessfulAuthentication(jakarta.servlet.http.HttpServletRequest request,
+ jakarta.servlet.http.HttpServletResponse response, Authentication authResult) {
LoginUser loginInfo = loginService.getMatch("loginName", authResult.getName()).get();
setupUserRequest(request, loginInfo);
}
diff --git a/src/main/java/org/openelisglobal/security/login/CustomAuthenticationFailureHandler.java b/src/main/java/org/openelisglobal/security/login/CustomAuthenticationFailureHandler.java
index 5f9f460bde..d2cff25e20 100644
--- a/src/main/java/org/openelisglobal/security/login/CustomAuthenticationFailureHandler.java
+++ b/src/main/java/org/openelisglobal/security/login/CustomAuthenticationFailureHandler.java
@@ -2,9 +2,9 @@
import java.io.IOException;
import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.http.HttpStatus;
import org.json.JSONObject;
import org.openelisglobal.common.constants.Constants;
diff --git a/src/main/java/org/openelisglobal/security/login/CustomFormAuthenticationSuccessHandler.java b/src/main/java/org/openelisglobal/security/login/CustomFormAuthenticationSuccessHandler.java
index 48372235ca..02b7c3b416 100644
--- a/src/main/java/org/openelisglobal/security/login/CustomFormAuthenticationSuccessHandler.java
+++ b/src/main/java/org/openelisglobal/security/login/CustomFormAuthenticationSuccessHandler.java
@@ -6,10 +6,10 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
import org.json.JSONObject;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.constants.Constants;
diff --git a/src/main/java/org/openelisglobal/security/login/CustomSSOAuthenticationSuccessHandler.java b/src/main/java/org/openelisglobal/security/login/CustomSSOAuthenticationSuccessHandler.java
index 2e23ac81fa..16658b38c7 100644
--- a/src/main/java/org/openelisglobal/security/login/CustomSSOAuthenticationSuccessHandler.java
+++ b/src/main/java/org/openelisglobal/security/login/CustomSSOAuthenticationSuccessHandler.java
@@ -9,10 +9,10 @@
import java.util.Map;
import java.util.Optional;
import java.util.Set;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
import org.json.JSONObject;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.constants.Constants;
diff --git a/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationController.java b/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationController.java
index 9f447c7ea1..71e480143b 100644
--- a/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationController.java
+++ b/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationController.java
@@ -4,10 +4,10 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationMenuController.java b/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationMenuController.java
index 0d1821f5f8..ca944402b6 100644
--- a/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationMenuController.java
+++ b/src/main/java/org/openelisglobal/siteinformation/controller/SiteInformationMenuController.java
@@ -2,8 +2,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
diff --git a/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationMenuRestController.java b/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationMenuRestController.java
index 2780d457d0..8237e1838f 100644
--- a/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationMenuRestController.java
+++ b/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationMenuRestController.java
@@ -2,8 +2,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseMenuController;
diff --git a/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationRestController.java b/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationRestController.java
index f254e5a3f0..242e139bbd 100644
--- a/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationRestController.java
+++ b/src/main/java/org/openelisglobal/siteinformation/controller/rest/SiteInformationRestController.java
@@ -4,10 +4,10 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.StaleObjectStateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationForm.java b/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationForm.java
index bc3cca3261..5b7626ed78 100644
--- a/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationForm.java
+++ b/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationForm.java
@@ -1,9 +1,9 @@
package org.openelisglobal.siteinformation.form;
import java.util.List;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.localization.valueholder.Localization;
diff --git a/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationMenuForm.java b/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationMenuForm.java
index 9089e0789c..568d7f8eec 100644
--- a/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationMenuForm.java
+++ b/src/main/java/org/openelisglobal/siteinformation/form/SiteInformationMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.siteinformation.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.siteinformation.valueholder.SiteInformation;
diff --git a/src/main/java/org/openelisglobal/siteinformation/service/SiteInformationServiceImpl.java b/src/main/java/org/openelisglobal/siteinformation/service/SiteInformationServiceImpl.java
index 3deaa2c507..121f63bfcb 100644
--- a/src/main/java/org/openelisglobal/siteinformation/service/SiteInformationServiceImpl.java
+++ b/src/main/java/org/openelisglobal/siteinformation/service/SiteInformationServiceImpl.java
@@ -5,8 +5,8 @@
import java.util.Map;
import java.util.Map.Entry;
import java.util.Optional;
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
import org.apache.commons.validator.GenericValidator;
import org.jasypt.util.text.TextEncryptor;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/systemmodule/dao/SystemModuleUrlDAO.java b/src/main/java/org/openelisglobal/systemmodule/dao/SystemModuleUrlDAO.java
index 7e6f60648c..c2fcb22a43 100644
--- a/src/main/java/org/openelisglobal/systemmodule/dao/SystemModuleUrlDAO.java
+++ b/src/main/java/org/openelisglobal/systemmodule/dao/SystemModuleUrlDAO.java
@@ -1,7 +1,7 @@
package org.openelisglobal.systemmodule.dao;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.dao.BaseDAO;
import org.openelisglobal.systemmodule.valueholder.SystemModuleUrl;
diff --git a/src/main/java/org/openelisglobal/systemmodule/daoimpl/SystemModuleUrlDAOImpl.java b/src/main/java/org/openelisglobal/systemmodule/daoimpl/SystemModuleUrlDAOImpl.java
index b2bbe58036..1eb8a1b4f8 100644
--- a/src/main/java/org/openelisglobal/systemmodule/daoimpl/SystemModuleUrlDAOImpl.java
+++ b/src/main/java/org/openelisglobal/systemmodule/daoimpl/SystemModuleUrlDAOImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.systemmodule.daoimpl;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.Session;
import org.hibernate.query.Query;
diff --git a/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlService.java b/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlService.java
index 549f0e6de0..b8e9d501ca 100644
--- a/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlService.java
+++ b/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlService.java
@@ -1,7 +1,7 @@
package org.openelisglobal.systemmodule.service;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.service.BaseObjectService;
import org.openelisglobal.systemmodule.valueholder.SystemModuleUrl;
diff --git a/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlServiceImpl.java b/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlServiceImpl.java
index 2023a63a5d..0a6730aa8f 100644
--- a/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlServiceImpl.java
+++ b/src/main/java/org/openelisglobal/systemmodule/service/SystemModuleUrlServiceImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.systemmodule.service;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
import org.openelisglobal.systemmodule.dao.SystemModuleUrlDAO;
import org.openelisglobal.systemmodule.valueholder.SystemModuleUrl;
diff --git a/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserController.java b/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserController.java
index 8eb3a01933..618f891258 100644
--- a/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserController.java
+++ b/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserController.java
@@ -13,9 +13,9 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.json.JSONArray;
diff --git a/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserMenuController.java b/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserMenuController.java
index 9bff910163..c1b8a946e9 100644
--- a/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserMenuController.java
+++ b/src/main/java/org/openelisglobal/systemuser/controller/UnifiedSystemUserMenuController.java
@@ -5,7 +5,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.action.IActionConstants;
diff --git a/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserMenuRestController.java b/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserMenuRestController.java
index a05431b50f..00dfdd5292 100644
--- a/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserMenuRestController.java
+++ b/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserMenuRestController.java
@@ -5,7 +5,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.action.IActionConstants;
diff --git a/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserRestController.java b/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserRestController.java
index 47f6f8b10a..498cdf83d3 100644
--- a/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserRestController.java
+++ b/src/main/java/org/openelisglobal/systemuser/controller/rest/UnifiedSystemUserRestController.java
@@ -13,9 +13,9 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.validator.GenericValidator;
import org.json.JSONArray;
diff --git a/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserForm.java b/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserForm.java
index 2f69057b98..b4baff50e2 100644
--- a/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserForm.java
+++ b/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserForm.java
@@ -6,8 +6,8 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.json.JSONArray;
import org.json.JSONObject;
import org.openelisglobal.common.form.BaseForm;
diff --git a/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserMenuForm.java b/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserMenuForm.java
index 14a2ac5127..7f3a4fcfd0 100644
--- a/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserMenuForm.java
+++ b/src/main/java/org/openelisglobal/systemuser/form/UnifiedSystemUserMenuForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.systemuser.form;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.AdminOptionMenuForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/systemuser/service/UserServiceImpl.java b/src/main/java/org/openelisglobal/systemuser/service/UserServiceImpl.java
index 19e05ce701..554e493637 100644
--- a/src/main/java/org/openelisglobal/systemuser/service/UserServiceImpl.java
+++ b/src/main/java/org/openelisglobal/systemuser/service/UserServiceImpl.java
@@ -6,8 +6,8 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpSession;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.openelisglobal.analysis.valueholder.Analysis;
diff --git a/src/main/java/org/openelisglobal/test/beanItems/TestResultItem.java b/src/main/java/org/openelisglobal/test/beanItems/TestResultItem.java
index 9b1f5b8819..5dad290769 100644
--- a/src/main/java/org/openelisglobal/test/beanItems/TestResultItem.java
+++ b/src/main/java/org/openelisglobal/test/beanItems/TestResultItem.java
@@ -21,7 +21,7 @@
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.provider.validation.AccessionNumberValidatorFactory.AccessionFormat;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/test/controller/BatchTestReassignmentController.java b/src/main/java/org/openelisglobal/test/controller/BatchTestReassignmentController.java
index d301d40020..6c0ace201e 100644
--- a/src/main/java/org/openelisglobal/test/controller/BatchTestReassignmentController.java
+++ b/src/main/java/org/openelisglobal/test/controller/BatchTestReassignmentController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
diff --git a/src/main/java/org/openelisglobal/test/controller/rest/BatchTestReassignmentRestController.java b/src/main/java/org/openelisglobal/test/controller/rest/BatchTestReassignmentRestController.java
index a8944ce74e..70f9c1a5bf 100644
--- a/src/main/java/org/openelisglobal/test/controller/rest/BatchTestReassignmentRestController.java
+++ b/src/main/java/org/openelisglobal/test/controller/rest/BatchTestReassignmentRestController.java
@@ -3,8 +3,8 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
diff --git a/src/main/java/org/openelisglobal/test/form/BatchTestReassignmentForm.java b/src/main/java/org/openelisglobal/test/form/BatchTestReassignmentForm.java
index f373652582..9994b419e1 100644
--- a/src/main/java/org/openelisglobal/test/form/BatchTestReassignmentForm.java
+++ b/src/main/java/org/openelisglobal/test/form/BatchTestReassignmentForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.test.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
diff --git a/src/main/java/org/openelisglobal/test/service/TestSectionServiceImpl.java b/src/main/java/org/openelisglobal/test/service/TestSectionServiceImpl.java
index bc7c607b05..16975a3743 100644
--- a/src/main/java/org/openelisglobal/test/service/TestSectionServiceImpl.java
+++ b/src/main/java/org/openelisglobal/test/service/TestSectionServiceImpl.java
@@ -4,7 +4,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
import org.openelisglobal.common.util.LocaleChangeListener;
diff --git a/src/main/java/org/openelisglobal/test/service/TestService.java b/src/main/java/org/openelisglobal/test/service/TestService.java
index b12a4b787f..4664b0b337 100644
--- a/src/main/java/org/openelisglobal/test/service/TestService.java
+++ b/src/main/java/org/openelisglobal/test/service/TestService.java
@@ -3,7 +3,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Optional;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.service.BaseObjectService;
import org.openelisglobal.method.valueholder.Method;
diff --git a/src/main/java/org/openelisglobal/test/service/TestServiceImpl.java b/src/main/java/org/openelisglobal/test/service/TestServiceImpl.java
index 7d468dd844..e8c188d2c3 100644
--- a/src/main/java/org/openelisglobal/test/service/TestServiceImpl.java
+++ b/src/main/java/org/openelisglobal/test/service/TestServiceImpl.java
@@ -9,8 +9,8 @@
import java.util.Optional;
import java.util.Vector;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.annotation.PostConstruct;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.action.IActionConstants;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/test/valueholder/TbMethodPanel.java b/src/main/java/org/openelisglobal/test/valueholder/TbMethodPanel.java
index f797b6b2b3..9a401dd672 100644
--- a/src/main/java/org/openelisglobal/test/valueholder/TbMethodPanel.java
+++ b/src/main/java/org/openelisglobal/test/valueholder/TbMethodPanel.java
@@ -13,13 +13,13 @@
*/
package org.openelisglobal.test.valueholder;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.EnumValueItemImpl;
@Entity
diff --git a/src/main/java/org/openelisglobal/test/valueholder/TbMethodTest.java b/src/main/java/org/openelisglobal/test/valueholder/TbMethodTest.java
index c39aadc97d..2521cd8ba9 100644
--- a/src/main/java/org/openelisglobal/test/valueholder/TbMethodTest.java
+++ b/src/main/java/org/openelisglobal/test/valueholder/TbMethodTest.java
@@ -13,13 +13,13 @@
*/
package org.openelisglobal.test.valueholder;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.EnumValueItemImpl;
@Entity
diff --git a/src/main/java/org/openelisglobal/testcalculated/controller/rest/CalculatedValueRestController.java b/src/main/java/org/openelisglobal/testcalculated/controller/rest/CalculatedValueRestController.java
index 854f48c18f..470bb5f890 100644
--- a/src/main/java/org/openelisglobal/testcalculated/controller/rest/CalculatedValueRestController.java
+++ b/src/main/java/org/openelisglobal/testcalculated/controller/rest/CalculatedValueRestController.java
@@ -3,7 +3,7 @@
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.dictionary.service.DictionaryService;
import org.openelisglobal.patient.service.PatientService;
diff --git a/src/main/java/org/openelisglobal/testcalculated/daoimpl/ResultCalculationDAOImpl.java b/src/main/java/org/openelisglobal/testcalculated/daoimpl/ResultCalculationDAOImpl.java
index 20c26e99aa..593105a836 100644
--- a/src/main/java/org/openelisglobal/testcalculated/daoimpl/ResultCalculationDAOImpl.java
+++ b/src/main/java/org/openelisglobal/testcalculated/daoimpl/ResultCalculationDAOImpl.java
@@ -2,7 +2,7 @@
import java.util.Collections;
import java.util.List;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.hibernate.Session;
import org.hibernate.query.Query;
import org.openelisglobal.common.daoimpl.BaseDAOImpl;
diff --git a/src/main/java/org/openelisglobal/testcalculated/daoimpl/TestCalculationDAOImpl.java b/src/main/java/org/openelisglobal/testcalculated/daoimpl/TestCalculationDAOImpl.java
index 38994465e1..867f114f74 100644
--- a/src/main/java/org/openelisglobal/testcalculated/daoimpl/TestCalculationDAOImpl.java
+++ b/src/main/java/org/openelisglobal/testcalculated/daoimpl/TestCalculationDAOImpl.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testcalculated.daoimpl;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.openelisglobal.common.daoimpl.BaseDAOImpl;
import org.openelisglobal.testcalculated.dao.TestCalculationDAO;
import org.openelisglobal.testcalculated.valueholder.Calculation;
diff --git a/src/main/java/org/openelisglobal/testcalculated/valueholder/Calculation.java b/src/main/java/org/openelisglobal/testcalculated/valueholder/Calculation.java
index 39bda2ae4e..1aae6778eb 100644
--- a/src/main/java/org/openelisglobal/testcalculated/valueholder/Calculation.java
+++ b/src/main/java/org/openelisglobal/testcalculated/valueholder/Calculation.java
@@ -2,18 +2,18 @@
import java.util.Collections;
import java.util.List;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.persistence.Transient;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.persistence.Transient;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/testcalculated/valueholder/Operation.java b/src/main/java/org/openelisglobal/testcalculated/valueholder/Operation.java
index 8f3b4786b2..c1a87722d3 100644
--- a/src/main/java/org/openelisglobal/testcalculated/valueholder/Operation.java
+++ b/src/main/java/org/openelisglobal/testcalculated/valueholder/Operation.java
@@ -3,15 +3,15 @@
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.util.IdValuePair;
@Entity
diff --git a/src/main/java/org/openelisglobal/testcalculated/valueholder/ResultCalculation.java b/src/main/java/org/openelisglobal/testcalculated/valueholder/ResultCalculation.java
index e8310d886b..4badc4713e 100644
--- a/src/main/java/org/openelisglobal/testcalculated/valueholder/ResultCalculation.java
+++ b/src/main/java/org/openelisglobal/testcalculated/valueholder/ResultCalculation.java
@@ -2,19 +2,19 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.CollectionTable;
-import javax.persistence.Column;
-import javax.persistence.ElementCollection;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.MapKeyColumn;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.CollectionTable;
+import jakarta.persistence.Column;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.MapKeyColumn;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.patient.valueholder.Patient;
import org.openelisglobal.result.valueholder.Result;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/MethodCreateController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/MethodCreateController.java
index 56ce170f4b..9c8f62269c 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/MethodCreateController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/MethodCreateController.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/MethodRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/MethodRenameEntryController.java
index 011a09d87a..591d3793fe 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/MethodRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/MethodRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelCreateController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelCreateController.java
index 98245e1211..6012604d21 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelCreateController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelCreateController.java
@@ -4,8 +4,8 @@
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelOrderController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelOrderController.java
index f68fd93842..bf25c9980d 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelOrderController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelOrderController.java
@@ -4,8 +4,8 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelRenameEntryController.java
index c05865d17d..2284b07e40 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelTestAssignController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelTestAssignController.java
index 3a7e03f887..98a8535d03 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/PanelTestAssignController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/PanelTestAssignController.java
@@ -4,8 +4,8 @@
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/ResultSelectListAddController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/ResultSelectListAddController.java
index 9d1e38f684..38613d2f2d 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/ResultSelectListAddController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/ResultSelectListAddController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeCreateController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeCreateController.java
index 063a596cef..40d331c523 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeCreateController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeCreateController.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeOrderController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeOrderController.java
index adffeae7c1..e4c63cf67c 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeOrderController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeOrderController.java
@@ -2,8 +2,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeRenameEntryController.java
index 1ec8e9cb1e..f72915830a 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeTestAssignController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeTestAssignController.java
index 3d6f9e7a14..332279bd42 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeTestAssignController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/SampleTypeTestAssignController.java
@@ -4,8 +4,8 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/SelectListRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/SelectListRenameEntryController.java
index 9b460ae672..ddcb1a56a9 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/SelectListRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/SelectListRenameEntryController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestActivationController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestActivationController.java
index 149f80fe04..97e6d1abd7 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestActivationController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestActivationController.java
@@ -4,9 +4,9 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import org.apache.commons.lang.math.NumberUtils;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import org.apache.commons.lang3.math.NumberUtils;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestAddController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestAddController.java
index 01be9c239e..6ae903439b 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestAddController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestAddController.java
@@ -6,8 +6,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestCatalogController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestCatalogController.java
index 996c0dd4de..1889d8f34c 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestCatalogController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestCatalogController.java
@@ -4,9 +4,9 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang.math.NumberUtils;
+import org.apache.commons.lang3.math.NumberUtils;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.dictionary.service.DictionaryService;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestModifyEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestModifyEntryController.java
index 9b15eb08cd..9624628929 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestModifyEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestModifyEntryController.java
@@ -6,8 +6,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.HibernateException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestOrderabilityController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestOrderabilityController.java
index 788d66d11a..0e34cbc76d 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestOrderabilityController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestOrderabilityController.java
@@ -4,9 +4,9 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import org.apache.commons.lang.math.NumberUtils;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import org.apache.commons.lang3.math.NumberUtils;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestRenameEntryController.java
index d596c3e1ab..d07a8a5dff 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionCreateController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionCreateController.java
index b01b798f4f..90f147ea07 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionCreateController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionCreateController.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionOrderController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionOrderController.java
index ec8ff056df..49ebd434c5 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionOrderController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionOrderController.java
@@ -2,8 +2,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionRenameEntryController.java
index 0bea376e16..35d247e498 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionTestAssignController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionTestAssignController.java
index 6273fbf3a3..52ea8d10e7 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionTestAssignController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/TestSectionTestAssignController.java
@@ -3,8 +3,8 @@
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/UomCreateController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/UomCreateController.java
index 45c9d24ae3..0bbb43865f 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/UomCreateController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/UomCreateController.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/UomRenameEntryController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/UomRenameEntryController.java
index 8bd69398fe..92ed7ee004 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/UomRenameEntryController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/UomRenameEntryController.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.controller;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodCreateRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodCreateRestController.java
index b4d55f3787..b5c0f2c6b4 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodCreateRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodCreateRestController.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodRenameEntryRestController.java
index 2949f8db9d..b663d34754 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/MethodRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelCreateRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelCreateRestController.java
index 8fac99ed6c..2156d0c24a 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelCreateRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelCreateRestController.java
@@ -4,7 +4,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelOrderRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelOrderRestController.java
index 081be7b993..66a52869f7 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelOrderRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelOrderRestController.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelRenameEntryRestController.java
index 8410fb7d8e..e13fe46b78 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelTestAssignRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelTestAssignRestController.java
index e5fc7d23ff..09da5717cd 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelTestAssignRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/PanelTestAssignRestController.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/ResultSelectListAddRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/ResultSelectListAddRestController.java
index 160cfdfa5c..00e325d7b8 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/ResultSelectListAddRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/ResultSelectListAddRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeCreateRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeCreateRestController.java
index 9663c9ca4a..c76dc06584 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeCreateRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeCreateRestController.java
@@ -2,7 +2,7 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeOrderRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeOrderRestController.java
index 785cb192af..2e09833a2a 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeOrderRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeOrderRestController.java
@@ -2,7 +2,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeRenameEntryRestController.java
index a711e33623..6b194a9ed1 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeTestAssignRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeTestAssignRestController.java
index 70e998cc7a..241282d881 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeTestAssignRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SampleTypeTestAssignRestController.java
@@ -4,7 +4,7 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SelectListRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SelectListRenameEntryRestController.java
index a7e0bc9896..882ea1d552 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SelectListRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/SelectListRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.services.DisplayListService;
import org.openelisglobal.common.services.DisplayListService.ListType;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestActivationRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestActivationRestController.java
index bb81caccb4..9d436f1db4 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestActivationRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestActivationRestController.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.lang.math.NumberUtils;
import org.json.simple.JSONArray;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestAddRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestAddRestController.java
index 2a3188a67e..6fb523cadc 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestAddRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestAddRestController.java
@@ -6,7 +6,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.validator.GenericValidator;
import org.hibernate.HibernateException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestCatalogRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestCatalogRestController.java
index fb287bdbe7..77f5713625 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestCatalogRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestCatalogRestController.java
@@ -4,9 +4,9 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang.math.NumberUtils;
+import org.apache.commons.lang3.math.NumberUtils;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.log.LogEvent;
import org.openelisglobal.dictionary.service.DictionaryService;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestModifyEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestModifyEntryRestController.java
index 12839ca5bf..3197b8c5a3 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestModifyEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestModifyEntryRestController.java
@@ -6,7 +6,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.validator.GenericValidator;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestOrderabilityRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestOrderabilityRestController.java
index 5a1a20e1d1..e9ecbcf239 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestOrderabilityRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestOrderabilityRestController.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.lang.math.NumberUtils;
import org.hibernate.HibernateException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestRenameEntryRestController.java
index 42fde2957e..591a045dbd 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionCreateRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionCreateRestController.java
index ae94cf963b..2045bc3ab1 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionCreateRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionCreateRestController.java
@@ -2,7 +2,7 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.constants.Constants;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionOrderRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionOrderRestController.java
index a1f4e1a0da..d321c607a0 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionOrderRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionOrderRestController.java
@@ -2,7 +2,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.json.simple.JSONArray;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionRenameEntryRestController.java
index fc55566c33..53cc86f8d6 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionTestAssignRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionTestAssignRestController.java
index fe6ba5010e..931df66989 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionTestAssignRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/TestSectionTestAssignRestController.java
@@ -3,7 +3,7 @@
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomCreateRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomCreateRestController.java
index b8fcc0677e..b3cfd8b812 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomCreateRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomCreateRestController.java
@@ -2,7 +2,7 @@
import java.util.List;
import java.util.Locale;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.openelisglobal.common.controller.BaseController;
import org.openelisglobal.common.exception.LIMSRuntimeException;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomRenameEntryRestController.java b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomRenameEntryRestController.java
index 69f67a25bc..09b5a3aa66 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomRenameEntryRestController.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/controller/rest/UomRenameEntryRestController.java
@@ -1,6 +1,6 @@
package org.openelisglobal.testconfiguration.controller.rest;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.hibernate.HibernateException;
import org.openelisglobal.common.controller.BaseController;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/MethodCreateForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/MethodCreateForm.java
index 10d5139689..96942c7ce7 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/MethodCreateForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/MethodCreateForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/MethodRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/MethodRenameEntryForm.java
index f078f87ba4..adbd9bdad3 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/MethodRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/MethodRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/PanelCreateForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/PanelCreateForm.java
index d4421ea623..a1a7a19a5f 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/PanelCreateForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/PanelCreateForm.java
@@ -2,8 +2,8 @@
import java.util.List;
import java.util.Map;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/PanelOrderForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/PanelOrderForm.java
index 2a5721e563..9add0b26fc 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/PanelOrderForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/PanelOrderForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
public class PanelOrderForm extends BaseForm {
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/PanelRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/PanelRenameEntryForm.java
index 1027cf1ec1..49b4bb335c 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/PanelRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/PanelRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/PanelTestAssignForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/PanelTestAssignForm.java
index dfb9eb6d75..867fa7ba98 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/PanelTestAssignForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/PanelTestAssignForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.testconfiguration.action.PanelTests;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeCreateForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeCreateForm.java
index 2bd578c20a..b9afb7f086 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeCreateForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeCreateForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeOrderForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeOrderForm.java
index 9c8134fc87..bc1db7b135 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeOrderForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeOrderForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
public class SampleTypeOrderForm extends BaseForm {
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeRenameEntryForm.java
index 9047076e4b..66f8e9f65b 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeTestAssignForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeTestAssignForm.java
index bd9311dde6..6d8bd6cd07 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeTestAssignForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/SampleTypeTestAssignForm.java
@@ -2,8 +2,8 @@
import java.util.LinkedHashMap;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestActivationForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestActivationForm.java
index a24da93c81..998b0d6b43 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestActivationForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestActivationForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.test.beanItems.TestActivationBean;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestAddForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestAddForm.java
index 66f29f0cb9..a1c294374a 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestAddForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestAddForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
public class TestAddForm extends BaseForm {
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestModifyEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestModifyEntryForm.java
index fd00374e2c..5b660cf157 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestModifyEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestModifyEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestOrderabilityForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestOrderabilityForm.java
index fdf5bc185a..583c1fd8a4 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestOrderabilityForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestOrderabilityForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
public class TestOrderabilityForm extends BaseForm {
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestRenameEntryForm.java
index f918aff5be..06da72f701 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionCreateForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionCreateForm.java
index f0b6efc7dd..6b408f6766 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionCreateForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionCreateForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.util.IdValuePair;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionOrderForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionOrderForm.java
index 5b7c5be467..5cc8f3158e 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionOrderForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionOrderForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
public class TestSectionOrderForm extends BaseForm {
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionRenameEntryForm.java
index 9498f51da4..254fa55388 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionTestAssignForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionTestAssignForm.java
index a5b30e6006..2df3fd3044 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionTestAssignForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/TestSectionTestAssignForm.java
@@ -2,8 +2,8 @@
import java.util.LinkedHashMap;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/UomCreateForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/UomCreateForm.java
index 297aa6c458..28279d9c62 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/UomCreateForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/UomCreateForm.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testconfiguration/form/UomRenameEntryForm.java b/src/main/java/org/openelisglobal/testconfiguration/form/UomRenameEntryForm.java
index c64ea87e48..d050b4eacd 100644
--- a/src/main/java/org/openelisglobal/testconfiguration/form/UomRenameEntryForm.java
+++ b/src/main/java/org/openelisglobal/testconfiguration/form/UomRenameEntryForm.java
@@ -1,8 +1,8 @@
package org.openelisglobal.testconfiguration.form;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Pattern;
import org.openelisglobal.common.form.BaseForm;
import org.openelisglobal.common.validator.ValidationHelper;
import org.openelisglobal.validation.annotations.SafeHtml;
diff --git a/src/main/java/org/openelisglobal/testmanagement/valueholder/TestManagementRoutingSwitchSessionHandler.java b/src/main/java/org/openelisglobal/testmanagement/valueholder/TestManagementRoutingSwitchSessionHandler.java
index aeab01ec79..32c37dd214 100644
--- a/src/main/java/org/openelisglobal/testmanagement/valueholder/TestManagementRoutingSwitchSessionHandler.java
+++ b/src/main/java/org/openelisglobal/testmanagement/valueholder/TestManagementRoutingSwitchSessionHandler.java
@@ -13,7 +13,7 @@
*/
package org.openelisglobal.testmanagement.valueholder;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpSession;
import org.openelisglobal.common.action.IActionConstants;
/**
diff --git a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRule.java b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRule.java
index 4c2f34abb5..ef654e3e41 100644
--- a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRule.java
+++ b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRule.java
@@ -1,20 +1,20 @@
package org.openelisglobal.testreflex.action.bean;
import java.util.Set;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-import javax.persistence.Transient;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToMany;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
+import jakarta.persistence.Transient;
import org.openelisglobal.common.valueholder.BaseObject;
@Entity
diff --git a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleAction.java b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleAction.java
index 38be006e97..c3537bcf02 100644
--- a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleAction.java
+++ b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleAction.java
@@ -1,12 +1,12 @@
package org.openelisglobal.testreflex.action.bean;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
@Entity
@Table(name = "reflex_rule_action")
diff --git a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleCondition.java b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleCondition.java
index de4bb14e44..bfb7feb691 100644
--- a/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleCondition.java
+++ b/src/main/java/org/openelisglobal/testreflex/action/bean/ReflexRuleCondition.java
@@ -1,14 +1,14 @@
package org.openelisglobal.testreflex.action.bean;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
@Entity
@Table(name = "reflex_rule_condition")
diff --git a/src/main/java/org/openelisglobal/testreflex/controller/rest/TestReflexRuleRestController.java b/src/main/java/org/openelisglobal/testreflex/controller/rest/TestReflexRuleRestController.java
index 52016d6445..f1f2f61608 100644
--- a/src/main/java/org/openelisglobal/testreflex/controller/rest/TestReflexRuleRestController.java
+++ b/src/main/java/org/openelisglobal/testreflex/controller/rest/TestReflexRuleRestController.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.openelisglobal.common.util.LabelValuePair;
import org.openelisglobal.dictionary.service.DictionaryService;
import org.openelisglobal.testreflex.action.bean.ReflexRule;
diff --git a/src/main/java/org/openelisglobal/testreflex/daoimpl/ReflexRuleDAOImpl.java b/src/main/java/org/openelisglobal/testreflex/daoimpl/ReflexRuleDAOImpl.java
index 0fce766dc0..d58ffb838b 100644
--- a/src/main/java/org/openelisglobal/testreflex/daoimpl/ReflexRuleDAOImpl.java
+++ b/src/main/java/org/openelisglobal/testreflex/daoimpl/ReflexRuleDAOImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.testreflex.daoimpl;
import java.util.List;
-import javax.transaction.Transactional;
+import jakarta.transaction.Transactional;
import org.hibernate.Session;
import org.hibernate.query.Query;
import org.openelisglobal.common.daoimpl.BaseDAOImpl;
diff --git a/src/main/java/org/openelisglobal/testresultsview/valueholder/ClientResultsViewBean.java b/src/main/java/org/openelisglobal/testresultsview/valueholder/ClientResultsViewBean.java
index b7dca7ca17..11471a01e7 100644
--- a/src/main/java/org/openelisglobal/testresultsview/valueholder/ClientResultsViewBean.java
+++ b/src/main/java/org/openelisglobal/testresultsview/valueholder/ClientResultsViewBean.java
@@ -1,15 +1,15 @@
package org.openelisglobal.testresultsview.valueholder;
-import javax.persistence.Column;
-import javax.persistence.Convert;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Convert;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.OneToOne;
+import jakarta.persistence.SequenceGenerator;
+import jakarta.persistence.Table;
import org.openelisglobal.common.valueholder.BaseObject;
import org.openelisglobal.result.valueholder.Result;
import org.openelisglobal.security.PasswordUtil;
diff --git a/src/main/java/org/openelisglobal/typeofsample/service/TypeOfSampleServiceImpl.java b/src/main/java/org/openelisglobal/typeofsample/service/TypeOfSampleServiceImpl.java
index 600e3c5a88..4702cf75d4 100644
--- a/src/main/java/org/openelisglobal/typeofsample/service/TypeOfSampleServiceImpl.java
+++ b/src/main/java/org/openelisglobal/typeofsample/service/TypeOfSampleServiceImpl.java
@@ -7,7 +7,7 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.hibernate.Hibernate;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/typeoftestresult/service/TypeOfTestResultServiceImpl.java b/src/main/java/org/openelisglobal/typeoftestresult/service/TypeOfTestResultServiceImpl.java
index 313a293233..c4e6463e97 100644
--- a/src/main/java/org/openelisglobal/typeoftestresult/service/TypeOfTestResultServiceImpl.java
+++ b/src/main/java/org/openelisglobal/typeoftestresult/service/TypeOfTestResultServiceImpl.java
@@ -1,7 +1,7 @@
package org.openelisglobal.typeoftestresult.service;
import java.util.EnumSet;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.apache.commons.validator.GenericValidator;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/unitofmeasure/service/UnitOfMeasureServiceImpl.java b/src/main/java/org/openelisglobal/unitofmeasure/service/UnitOfMeasureServiceImpl.java
index bfaca85a79..e6ede5506b 100644
--- a/src/main/java/org/openelisglobal/unitofmeasure/service/UnitOfMeasureServiceImpl.java
+++ b/src/main/java/org/openelisglobal/unitofmeasure/service/UnitOfMeasureServiceImpl.java
@@ -3,7 +3,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import org.hibernate.Hibernate;
import org.openelisglobal.common.exception.LIMSDuplicateRecordException;
import org.openelisglobal.common.service.AuditableBaseObjectServiceImpl;
diff --git a/src/main/java/org/openelisglobal/userrole/valueholder/LabUnitRoleMap.java b/src/main/java/org/openelisglobal/userrole/valueholder/LabUnitRoleMap.java
index 663184227a..7449cb850a 100644
--- a/src/main/java/org/openelisglobal/userrole/valueholder/LabUnitRoleMap.java
+++ b/src/main/java/org/openelisglobal/userrole/valueholder/LabUnitRoleMap.java
@@ -1,15 +1,15 @@
package org.openelisglobal.userrole.valueholder;
import java.util.Set;
-import javax.persistence.CollectionTable;
-import javax.persistence.Column;
-import javax.persistence.ElementCollection;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.Table;
+import jakarta.persistence.CollectionTable;
+import jakarta.persistence.Column;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+import jakarta.persistence.FetchType;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.JoinColumn;
+import jakarta.persistence.Table;
/**
* LabUnitRoleMap represents a Map of Map> ie
-
-
LIMS Application
@@ -30,17 +29,18 @@
-
+
*.jsp
UTF-8
-
+
Database connection
jdbc/LimsDS
@@ -48,7 +48,8 @@
Container
-
+
Allowed methods
@@ -92,4 +93,4 @@
-
+
\ No newline at end of file
diff --git a/src/main/webapp/index.jsp b/src/main/webapp/index.jsp
index 7042849a38..0dd69dd883 100644
--- a/src/main/webapp/index.jsp
+++ b/src/main/webapp/index.jsp
@@ -1,4 +1,4 @@
-<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
+<%@ taglib uri = "jakarta.tags.core" prefix = "c" %>
<%--
diff --git a/src/main/webapp/pages/accession/accessionSearch.jsp b/src/main/webapp/pages/accession/accessionSearch.jsp
index 766861e29d..4ab4900f8c 100644
--- a/src/main/webapp/pages/accession/accessionSearch.jsp
+++ b/src/main/webapp/pages/accession/accessionSearch.jsp
@@ -9,9 +9,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%--
~ The contents of this file are subject to the Mozilla Public License
diff --git a/src/main/webapp/pages/accessionvalidationrange/accessionValidationRange.jsp b/src/main/webapp/pages/accessionvalidationrange/accessionValidationRange.jsp
index 325538733c..32b6bdc264 100644
--- a/src/main/webapp/pages/accessionvalidationrange/accessionValidationRange.jsp
+++ b/src/main/webapp/pages/accessionvalidationrange/accessionValidationRange.jsp
@@ -17,10 +17,10 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+
+<%@ taglib prefix="fn" uri="jakarta.tags.functions"%>
@@ -31,9 +31,9 @@
<%
- int rowColorIndex = 2;
+ int rowColorIndex = 2;
String searchTerm = request.getParameter("searchTerm");
- String url = request.getAttribute("javax.servlet.forward.servlet_path").toString();
+ String url = request.getAttribute("jakarta.servlet.forward.servlet_path").toString();
//boolean showTestSectionSelect = !ConfigurationProperties.getInstance().isPropertyValueEqual(Property.configurationName, "CI RetroCI");
%>
diff --git a/src/main/webapp/pages/accessionvalidationrange/accessionValidationRangeUnitSearch.jsp b/src/main/webapp/pages/accessionvalidationrange/accessionValidationRangeUnitSearch.jsp
index 80031b64ed..73755fe9af 100644
--- a/src/main/webapp/pages/accessionvalidationrange/accessionValidationRangeUnitSearch.jsp
+++ b/src/main/webapp/pages/accessionvalidationrange/accessionValidationRangeUnitSearch.jsp
@@ -17,16 +17,16 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+
+<%@ taglib prefix="fn" uri="jakarta.tags.functions"%>
<%
- String url = request.getAttribute("javax.servlet.forward.servlet_path").toString();
+ String url = request.getAttribute("jakarta.servlet.forward.servlet_path").toString();
%>
diff --git a/src/main/webapp/pages/dataexchange/portableOrderView.jsp b/src/main/webapp/pages/dataexchange/portableOrderView.jsp
index 1ef43fe586..ac4061152b 100644
--- a/src/main/webapp/pages/dataexchange/portableOrderView.jsp
+++ b/src/main/webapp/pages/dataexchange/portableOrderView.jsp
@@ -3,9 +3,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
+
diff --git a/src/main/webapp/pages/dataexchange/studyElectronicOrderView.jsp b/src/main/webapp/pages/dataexchange/studyElectronicOrderView.jsp
index 74eeef0c39..fbcdcc6d1f 100644
--- a/src/main/webapp/pages/dataexchange/studyElectronicOrderView.jsp
+++ b/src/main/webapp/pages/dataexchange/studyElectronicOrderView.jsp
@@ -5,10 +5,10 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
-<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+<%@ taglib prefix="fmt" uri="jakarta.tags.fmt" %>
+
+<%@ taglib prefix="fn" uri="jakarta.tags.functions" %>
diff --git a/src/main/webapp/pages/datasubmission/dataSubmissionView.jsp b/src/main/webapp/pages/datasubmission/dataSubmissionView.jsp
index 8391a1e9da..8e84bfc5a8 100644
--- a/src/main/webapp/pages/datasubmission/dataSubmissionView.jsp
+++ b/src/main/webapp/pages/datasubmission/dataSubmissionView.jsp
@@ -6,9 +6,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
diff --git a/src/main/webapp/pages/patient/patientSearch.jsp b/src/main/webapp/pages/patient/patientSearch.jsp
index 75960918f7..7147217af7 100644
--- a/src/main/webapp/pages/patient/patientSearch.jsp
+++ b/src/main/webapp/pages/patient/patientSearch.jsp
@@ -8,9 +8,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
diff --git a/src/main/webapp/pages/patient/retroCIEntryByProject.jsp b/src/main/webapp/pages/patient/retroCIEntryByProject.jsp
index b8229e1399..b50a2728f0 100644
--- a/src/main/webapp/pages/patient/retroCIEntryByProject.jsp
+++ b/src/main/webapp/pages/patient/retroCIEntryByProject.jsp
@@ -7,9 +7,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
String requestType = (String)request.getSession().getAttribute("type");
HashSet accessMap = (HashSet)request.getSession().getAttribute(IActionConstants.PERMITTED_ACTIONS_MAP);
diff --git a/src/main/webapp/pages/patienttype/patientType.jsp b/src/main/webapp/pages/patienttype/patientType.jsp
index 98f42689b6..c3ead01658 100644
--- a/src/main/webapp/pages/patienttype/patientType.jsp
+++ b/src/main/webapp/pages/patienttype/patientType.jsp
@@ -4,9 +4,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
-->
diff --git a/src/main/webapp/pages/referral/referralSearch.jsp b/src/main/webapp/pages/referral/referralSearch.jsp
index 4963459724..53837a9eed 100644
--- a/src/main/webapp/pages/referral/referralSearch.jsp
+++ b/src/main/webapp/pages/referral/referralSearch.jsp
@@ -12,9 +12,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+<%@ taglib prefix="fn" uri="jakarta.tags.functions"%>
diff --git a/src/main/webapp/pages/reportconfiguration/reportConfiguration.jsp b/src/main/webapp/pages/reportconfiguration/reportConfiguration.jsp
index b9545424f9..5f0d579fec 100644
--- a/src/main/webapp/pages/reportconfiguration/reportConfiguration.jsp
+++ b/src/main/webapp/pages/reportconfiguration/reportConfiguration.jsp
@@ -18,7 +18,7 @@
org.openelisglobal.common.util.ConfigurationProperties" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
<%
boolean useProject = FormFields.getInstance().useField(Field.Project);
boolean useSiteList = FormFields.getInstance().useField(Field.NON_CONFORMITY_SITE_LIST);
diff --git a/src/main/webapp/pages/reports/commonReportParameters.jsp b/src/main/webapp/pages/reports/commonReportParameters.jsp
index 4878ab2a24..be12f516d1 100644
--- a/src/main/webapp/pages/reports/commonReportParameters.jsp
+++ b/src/main/webapp/pages/reports/commonReportParameters.jsp
@@ -11,8 +11,8 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
<%-- Creates updated UI. Removing for current release
diff --git a/src/main/webapp/pages/reports/siteSearch.jsp b/src/main/webapp/pages/reports/siteSearch.jsp
index 3abba51d91..9026d96c7f 100644
--- a/src/main/webapp/pages/reports/siteSearch.jsp
+++ b/src/main/webapp/pages/reports/siteSearch.jsp
@@ -10,9 +10,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean useReferralSiteList = FormFields.getInstance().useField( FormFields.Field.RequesterSiteList );
diff --git a/src/main/webapp/pages/result/resultListView.jsp b/src/main/webapp/pages/result/resultListView.jsp
index a2a3e697a2..75115d1ac6 100644
--- a/src/main/webapp/pages/result/resultListView.jsp
+++ b/src/main/webapp/pages/result/resultListView.jsp
@@ -22,10 +22,10 @@
<%@ page isELIgnored="false"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags"%>
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+
+<%@ taglib prefix="fn" uri="jakarta.tags.functions"%>
@@ -530,7 +530,7 @@ function validateEntrySize( elementValue ){
function doShowTests(){
var form = document.getElementById("mainForm");
- window.location.href = "${requestScope['javax.servlet.forward.request_uri']}?accessionNumber=" + $("searchAccessionID").value;
+ window.location.href = "${requestScope['jakarta.servlet.forward.request_uri']}?accessionNumber=" + $("searchAccessionID").value;
}
function /*void*/ handleEnterEvent( ){
diff --git a/src/main/webapp/pages/result/resultsBySearch.jsp b/src/main/webapp/pages/result/resultsBySearch.jsp
index bdf08df271..5e65ad3f55 100644
--- a/src/main/webapp/pages/result/resultsBySearch.jsp
+++ b/src/main/webapp/pages/result/resultsBySearch.jsp
@@ -4,9 +4,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
diff --git a/src/main/webapp/pages/samplebatchentry/routine/patientSearch.jsp b/src/main/webapp/pages/samplebatchentry/routine/patientSearch.jsp
index 76da05d68d..074a532f22 100644
--- a/src/main/webapp/pages/samplebatchentry/routine/patientSearch.jsp
+++ b/src/main/webapp/pages/samplebatchentry/routine/patientSearch.jsp
@@ -9,9 +9,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean supportSTNumber = FormFields.getInstance().useField(Field.StNumber);
diff --git a/src/main/webapp/pages/samplebatchentry/routine/sampleBatchEntry.jsp b/src/main/webapp/pages/samplebatchentry/routine/sampleBatchEntry.jsp
index 9f687c11e0..c4788b64d6 100644
--- a/src/main/webapp/pages/samplebatchentry/routine/sampleBatchEntry.jsp
+++ b/src/main/webapp/pages/samplebatchentry/routine/sampleBatchEntry.jsp
@@ -9,9 +9,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean restrictNewReferringSiteEntries = ConfigurationProperties.getInstance().isPropertyValueEqual(Property.restrictFreeTextRefSiteEntry, "true");
diff --git a/src/main/webapp/pages/samplebatchentry/setup/configureBarcode.jsp b/src/main/webapp/pages/samplebatchentry/setup/configureBarcode.jsp
index 18870063a1..5ef04efdd6 100644
--- a/src/main/webapp/pages/samplebatchentry/setup/configureBarcode.jsp
+++ b/src/main/webapp/pages/samplebatchentry/setup/configureBarcode.jsp
@@ -7,9 +7,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean restrictNewReferringSiteEntries = ConfigurationProperties.getInstance().isPropertyValueEqual(Property.restrictFreeTextRefSiteEntry, "true");
diff --git a/src/main/webapp/pages/samplebatchentry/setup/sampleAdd.jsp b/src/main/webapp/pages/samplebatchentry/setup/sampleAdd.jsp
index bb1ab8708a..b52c97699e 100644
--- a/src/main/webapp/pages/samplebatchentry/setup/sampleAdd.jsp
+++ b/src/main/webapp/pages/samplebatchentry/setup/sampleAdd.jsp
@@ -12,9 +12,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean useCollectionDate = FormFields.getInstance().useField(Field.CollectionDate);
diff --git a/src/main/webapp/pages/samplebatchentry/setup/sampleBatchEntrySetup.jsp b/src/main/webapp/pages/samplebatchentry/setup/sampleBatchEntrySetup.jsp
index 5e8235787a..79efdd468e 100644
--- a/src/main/webapp/pages/samplebatchentry/setup/sampleBatchEntrySetup.jsp
+++ b/src/main/webapp/pages/samplebatchentry/setup/sampleBatchEntrySetup.jsp
@@ -7,9 +7,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean acceptExternalOrders = ConfigurationProperties.getInstance().isPropertyValueEqual(Property.ACCEPT_EXTERNAL_ORDERS, "true");
diff --git a/src/main/webapp/pages/samplebatchentry/setup/sampleOrder.jsp b/src/main/webapp/pages/samplebatchentry/setup/sampleOrder.jsp
index fb3a401d13..104dfb071e 100644
--- a/src/main/webapp/pages/samplebatchentry/setup/sampleOrder.jsp
+++ b/src/main/webapp/pages/samplebatchentry/setup/sampleOrder.jsp
@@ -8,9 +8,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>
<%
boolean acceptExternalOrders = ConfigurationProperties.getInstance().isPropertyValueEqual( Property.ACCEPT_EXTERNAL_ORDERS, "true" );
diff --git a/src/main/webapp/pages/samplebatchentry/study/OnDemandEntry.jsp b/src/main/webapp/pages/samplebatchentry/study/OnDemandEntry.jsp
index ede7e2cb54..dfe9dd9062 100644
--- a/src/main/webapp/pages/samplebatchentry/study/OnDemandEntry.jsp
+++ b/src/main/webapp/pages/samplebatchentry/study/OnDemandEntry.jsp
@@ -6,9 +6,9 @@
<%@ page isELIgnored="false" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="c" uri="jakarta.tags.core"%>
+
-<%@ taglib prefix="ajax" uri="/tags/ajaxtags" %>