diff --git a/Dockerfile b/Dockerfile index 9c7a35ff737b36c51ac70f1be1835a267f76d7f4..46ace0165ba0e9bcdfeadbb731f5e6c28d60a39a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -65,8 +65,8 @@ RUN echo '<?xml version="1.0" encoding="UTF-8"?>\ <resource-root path="postgis-jdbc-${POSTGIS_VERSION}.jar"/>\ </resources>\ <dependencies>\ - <module name="javax.api"/>\ - <module name="javax.transaction.api"/>\ + <module name="jakarta.api"/>\ + <module name="jakarta.transaction.api"/>\ </dependencies>\ </module>' > ${JBOSS_HOME}/modules/org/postgresql/main/module.xml RUN cp /root/.m2/repository/org/postgresql/postgresql/${POSTGRES_VERSION}/postgresql-${POSTGRES_VERSION}.jar ${JBOSS_HOME}/modules/org/postgresql/main diff --git a/enunciate.xml b/enunciate.xml index 982546e640b0422cbafe6a054b12f91ccbf04902..0ff5edfb027c0e1c22abf29d793072043c27a6fc 100644 --- a/enunciate.xml +++ b/enunciate.xml @@ -31,7 +31,7 @@ <exclude pattern="uk.**"/> <exclude pattern="it.**"/> <exclude pattern="antlr.**"/> - <exclude pattern="javax.**"/> + <exclude pattern="jakarta.**"/> </api-classes> <facets> <exclude name="restricted"/> diff --git a/pom.xml b/pom.xml index 9641cf33872c11eaace662ce40e9ac793b149fad..6f3f0d3dd4edd00b43a857abbe76df1889ea50a8 100755 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,12 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>no.nibio.vips.</groupId> <artifactId>VIPSLogic</artifactId> <packaging>war</packaging> - <version>2024.3</version> + <version>2025.1</version> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> @@ -52,7 +53,7 @@ </repository> </repositories> <dependencies> - + <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> @@ -70,27 +71,45 @@ <version>10.4.1</version> </dependency> <dependency> - <groupId>javax.servlet</groupId> - <artifactId>javax.servlet-api</artifactId> - <version>4.0.1</version> + <groupId>jakarta.platform</groupId> + <artifactId>jakarta.jakartaee-api</artifactId> + <version>10.0.0</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>jakarta.persistence</groupId> + <artifactId>jakarta.persistence-api</artifactId> + <version>3.2.0</version> + <scope>provided</scope> + </dependency> + + <dependency> + <groupId>jakarta.servlet</groupId> + <artifactId>jakarta.servlet-api</artifactId> + <version>6.1.0</version> <scope>test</scope> </dependency> + <dependency> + <groupId>com.sun.mail</groupId> + <artifactId>jakarta.mail</artifactId> + <version>2.0.1</version> + </dependency> <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-client</artifactId> - <version>4.7.9.Final</version> + <version>6.2.11.Final</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-core</artifactId> - <version>4.7.9.Final</version> + <version>6.2.11.Final</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jackson2-provider</artifactId> - <version>4.7.9.Final</version> + <version>6.2.11.Final</version> <scope>provided</scope> </dependency> <dependency> @@ -105,9 +124,9 @@ <type>jar</type> </dependency> <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient</artifactId> - <version>4.5.14</version> + <groupId>org.apache.httpcomponents.client5</groupId> + <artifactId>httpclient5</artifactId> + <version>5.4.1</version> <type>jar</type> <scope>provided</scope> </dependency> @@ -153,7 +172,7 @@ <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> - <version>5.6.15.Final</version> + <version>6.6.1.Final</version> <exclusions> <exclusion> <groupId>org.dom4j</groupId> @@ -162,14 +181,10 @@ </exclusions> </dependency> <dependency> - <groupId>org.hibernate</groupId> + <groupId>org.hibernate.orm</groupId> <artifactId>hibernate-spatial</artifactId> - <version>5.6.15.Final</version> + <version>6.6.1.Final</version> <exclusions> - <exclusion> - <artifactId>postgresql</artifactId> - <groupId>postgresql</groupId> - </exclusion> <exclusion> <groupId>org.dom4j</groupId> <artifactId>dom4j</artifactId> @@ -180,8 +195,23 @@ <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> - <version>42.7.1</version> - <scope>provided</scope> + <version>42.7.4</version> + </dependency> + <dependency> + <groupId>net.postgis</groupId> + <artifactId>postgis-jdbc</artifactId> + <version>2024.1.0</version> + </dependency> + <dependency> + <groupId>net.postgis</groupId> + <artifactId>postgis-geometry</artifactId> + <version>2024.1.0</version> + </dependency> + + <dependency> + <groupId>io.hypersistence</groupId> + <artifactId>hypersistence-utils-hibernate-63</artifactId> + <version>3.9.0</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> @@ -209,21 +239,7 @@ <dependency> <groupId>no.nibio.vips</groupId> <artifactId>VIPSCommon</artifactId> - <version>2.1.1</version> - </dependency> - <dependency> - <groupId>javax</groupId> - <artifactId>javaee-web-api</artifactId> - <version>8.0.1</version> - <type>jar</type> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>javax</groupId> - <artifactId>javaee-api</artifactId> - <version>8.0.1</version> - <type>jar</type> - <scope>provided</scope> + <version>3.0.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.freemarker</groupId> @@ -236,9 +252,9 @@ <version>2.2.5</version> </dependency> <dependency> - <groupId>commons-fileupload</groupId> - <artifactId>commons-fileupload</artifactId> - <version>1.5</version> + <groupId>org.apache.commons</groupId> + <artifactId>commons-fileupload2-jakarta-servlet6</artifactId> + <version>2.0.0-M2</version> </dependency> <dependency> <groupId>com.ibm.icu</groupId> @@ -253,7 +269,7 @@ <dependency> <groupId>com.webcohesion.enunciate</groupId> <artifactId>enunciate-core-annotations</artifactId> - <version>2.17.1</version> + <version>2.18.1</version> </dependency> <dependency> <groupId>com.bedatadriven</groupId> @@ -342,13 +358,14 @@ <goal>docs</goal> </goals> <configuration> - <docsDir>${project.build.directory}/${project.build.finalName}/public/RESTdocs</docsDir> + <docsDir> + ${project.build.directory}/${project.build.finalName}/public/RESTdocs</docsDir> </configuration> </execution> </executions> - + </plugin> </plugins> </build> - -</project> + +</project> \ No newline at end of file diff --git a/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java b/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java index 68256d9a181b43c79ccd34f668c9cf7560e7c4ea..75ee548ed2488a772afc85f2fbe1f5babfeb9659 100755 --- a/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java +++ b/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java @@ -19,8 +19,8 @@ package no.nibio.vips.logic; import java.util.Set; -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.Application; +import jakarta.ws.rs.ApplicationPath; +import jakarta.ws.rs.core.Application; /** * Responsible for adding REST resources @@ -58,6 +58,7 @@ public class VIPSLogicApplication extends Application resources.add(no.nibio.vips.logic.service.ObservationTimeSeriesService.class); resources.add(no.nibio.vips.logic.service.ModelFormService.class); resources.add(no.nibio.vips.logic.service.JacksonConfig.class); + resources.add(no.nibio.vips.logic.entity.helpers.KmlMessageBodyWriter.class); //resources.add(no.nibio.vips.logic.service.JSONBConfig.class); //resources.add(no.nibio.vips.coremanager.service.ManagerResourceImpl.class); } diff --git a/src/main/java/no/nibio/vips/logic/authenticate/AuthenticationFilter.java b/src/main/java/no/nibio/vips/logic/authenticate/AuthenticationFilter.java index 475c68bf2df86d301dd46a0ef92440ac85adf73b..3617ff8875bd3f57daa6f8873d7405e89fd47f45 100755 --- a/src/main/java/no/nibio/vips/logic/authenticate/AuthenticationFilter.java +++ b/src/main/java/no/nibio/vips/logic/authenticate/AuthenticationFilter.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.authenticate; import java.io.IOException; import java.net.URLEncoder; import java.util.UUID; -import javax.ejb.EJB; -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.Cookie; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +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.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.VipsLogicUser; import no.nibio.vips.logic.util.Globals; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/CropCategoryController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/CropCategoryController.java index 4d72c996355221ddf90c948b321ad8f38882dab3..388bb923f673fea89399e7acbe26d578a33e7dc8 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/CropCategoryController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/CropCategoryController.java @@ -22,11 +22,11 @@ import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.OrganismBean; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.CropCategory; @@ -101,7 +101,7 @@ public class CropCategoryController extends HttpServlet { Integer cropCategoryId = formValidation.getFormField("cropCategoryId").getValueAsInteger(); List<Integer> cropCategoryCropOrganismIds = FormUtil.getIdsFromMultipleSelect(formValidation.getFormField("cropCategoryCropOrganismIds").getWebValues()); CropCategory cropCategory = organismBean.getCropCategory(cropCategoryId); - cropCategory.setCropOrganismIds(cropCategoryCropOrganismIds.toArray(new Integer[cropCategoryCropOrganismIds.size()])); + cropCategory.setCropOrganismIds(cropCategoryCropOrganismIds); organismBean.storeCropCategory(cropCategory); response.sendRedirect(new StringBuilder(Globals.PROTOCOL + "://").append(ServletUtil.getServerName(request)).append("/organism/cropcategory?messageKey=cropCategoryUpdated").toString()); diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/ForecastConfigurationController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/ForecastConfigurationController.java index 98c8b1a8e4bc3709ece35a188505f9569e50e10a..6c6a499c481c4dd8690f222fca89e73c5c6c6bd1 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/ForecastConfigurationController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/ForecastConfigurationController.java @@ -25,13 +25,13 @@ import java.util.Collections; import java.util.Date; import java.util.List; import java.util.Map; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.ibm.icu.util.Calendar; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/FrontpageController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/FrontpageController.java index a0dc38573b63d1aaa0ed40717c9a418a184a87a9..b2f5756462e0969d3515edbbc6c585b6a4864366 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/FrontpageController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/FrontpageController.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.controller.servlet; 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; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/HttpErrorServlet.java b/src/main/java/no/nibio/vips/logic/controller/servlet/HttpErrorServlet.java index 4c76f564dd8ba0594fa52830d332cd63c2c7326a..d739be32514ade3d271898284008c0b1808859b8 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/HttpErrorServlet.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/HttpErrorServlet.java @@ -20,10 +20,10 @@ package no.nibio.vips.logic.controller.servlet; import java.io.IOException; import java.util.Enumeration; -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; /** * @@ -44,8 +44,8 @@ public class HttpErrorServlet extends HttpServlet { throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); - request.setAttribute("message", request.getAttribute("javax.servlet.error.message")); - Integer statusCode = (Integer) request.getAttribute("javax.servlet.error.status_code"); + request.setAttribute("message", request.getAttribute("jakarta.servlet.error.message")); + Integer statusCode = (Integer) request.getAttribute("jakarta.servlet.error.status_code"); /** // Explore the attributes sent to error template for(Enumeration<String> e = request.getAttributeNames();e.hasMoreElements();) diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/LoginController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/LoginController.java index e89580f9dfb6cfd6c9d54ce3b8717aff59e65f44..4b69de6353a3f7f463bb47b4cb7c95fc75230409 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/LoginController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/LoginController.java @@ -26,13 +26,13 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.ws.rs.core.Response; import com.fasterxml.jackson.databind.ObjectMapper; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/MessageController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/MessageController.java index d148016a43c68f546305214a4d77362f8a9da6de..80c4b2ca879c226f860092bd19d3b3fdb9711961 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/MessageController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/MessageController.java @@ -26,15 +26,15 @@ import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.Map; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -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.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.MessageBean; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.Message; @@ -51,10 +51,10 @@ import no.nibio.web.forms.FormUtil; import no.nibio.web.forms.FormValidation; import no.nibio.web.forms.FormValidationException; import no.nibio.web.forms.FormValidator; -import org.apache.commons.fileupload.FileItem; -import org.apache.commons.fileupload.FileUploadException; -import org.apache.commons.fileupload.disk.DiskFileItemFactory; -import org.apache.commons.fileupload.servlet.ServletFileUpload; +import org.apache.commons.fileupload2.core.FileItem; +import org.apache.commons.fileupload2.core.FileUploadException; +import org.apache.commons.fileupload2.core.DiskFileItemFactory; +import org.apache.commons.fileupload2.jakarta.servlet6.JakartaServletFileUpload; /** * @copyright 2014-2022 <a href="http://www.nibio.no/">NIBIO</a> @@ -273,18 +273,10 @@ public class MessageController extends HttpServlet { { Map<String,String[]> parameterMap; List<FileItem> items = null; - if(ServletFileUpload.isMultipartContent(request)) + if(JakartaServletFileUpload.isMultipartContent(request)) { - // Create a factory for disk-based file items - DiskFileItemFactory factory = new DiskFileItemFactory(); - - // Configure a repository (to ensure a secure temp location is used) - ServletContext servletContext = this.getServletConfig().getServletContext(); - File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir"); - factory.setRepository(repository); - // Create a new file upload handler - ServletFileUpload upload = new ServletFileUpload(factory); + JakartaServletFileUpload upload = new JakartaServletFileUpload(); // Parse the request items = upload.parseRequest(request); diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/NotificationSubscriptionController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/NotificationSubscriptionController.java index b93644d845a86efda90628d8f436161ee68a379c..d8cb4769f8ebd024770e4ed0a7d57e5ddf716919 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/NotificationSubscriptionController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/NotificationSubscriptionController.java @@ -22,13 +22,13 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.util.List; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.OrganismBean; import no.nibio.vips.logic.controller.session.PointOfInterestBean; import no.nibio.vips.logic.controller.session.UserBean; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java index 5c320adc975d2f694c00421c204795e95e8110af..91a147a5eddb4a5b565454990114b13d83468617 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java @@ -32,14 +32,14 @@ import java.util.Map; import java.util.Set; import java.util.TimeZone; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -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.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.ObservationBean; import no.nibio.vips.logic.controller.session.OrganismBean; import no.nibio.vips.logic.controller.session.PointOfInterestBean; @@ -65,10 +65,10 @@ import no.nibio.web.forms.FormUtil; import no.nibio.web.forms.FormValidation; import no.nibio.web.forms.FormValidationException; import no.nibio.web.forms.FormValidator; -import org.apache.commons.fileupload.FileItem; -import org.apache.commons.fileupload.FileUploadException; -import org.apache.commons.fileupload.disk.DiskFileItemFactory; -import org.apache.commons.fileupload.servlet.ServletFileUpload; +import org.apache.commons.fileupload2.core.FileItem; +import org.apache.commons.fileupload2.core.FileUploadException; +import org.apache.commons.fileupload2.core.DiskFileItemFactory; +import org.apache.commons.fileupload2.jakarta.servlet6.JakartaServletFileUpload; /** * @copyright 2014-2022 <a href="http://www.nibio.no/">NIBIO</a> @@ -410,18 +410,11 @@ public class ObservationController extends HttpServlet { { Map<String,String[]> parameterMap; List<FileItem> items = null; - if(ServletFileUpload.isMultipartContent(request)) + if(JakartaServletFileUpload.isMultipartContent(request)) { - // Create a factory for disk-based file items - DiskFileItemFactory factory = new DiskFileItemFactory(); - - // Configure a repository (to ensure a secure temp location is used) - ServletContext servletContext = this.getServletConfig().getServletContext(); - File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir"); - factory.setRepository(repository); - + // Create a new file upload handler - ServletFileUpload upload = new ServletFileUpload(factory); + JakartaServletFileUpload upload = new JakartaServletFileUpload(); // Parse the request items = upload.parseRequest(request); diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganismController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganismController.java index 19e14371f1544d3c213983aa81274681f9e97bd3..2579fb867dd7538b578441c9a4715f9918d343a6 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganismController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganismController.java @@ -23,13 +23,13 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.OrganismBean; import no.nibio.vips.logic.entity.CropPest; import no.nibio.vips.logic.entity.Organism; @@ -377,8 +377,7 @@ public class OrganismController extends HttpServlet { { Integer cropOrganismId = formValidation.getFormField("cropOrganismId").getValueAsInteger(); boolean includeAllChildCrops = formValidation.getFormField("includeAllChildCrops").getWebValue() != null; - List<Integer> poTemp = FormUtil.getIdsFromMultipleSelect(formValidation.getFormField("pestOrganismIds").getWebValues()); - Integer[] pestOrganismIds = poTemp.toArray(new Integer[poTemp.size()]); + List<Integer> pestOrganismIds = FormUtil.getIdsFromMultipleSelect(formValidation.getFormField("pestOrganismIds").getWebValues()); CropPest cropPest = em.find(CropPest.class, cropOrganismId); if(cropPest == null) { diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationController.java index ed2e9fd72e7dd666418d13a765304fdcdd98597b..d14421dbb84301ca6db7f019077e809521fec853 100644 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationController.java @@ -22,11 +22,11 @@ import java.io.IOException; import java.util.Collections; import java.util.List; import java.util.TimeZone; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.gis.GISUtil; import no.nibio.vips.gis.LonLatStringFormatException; import no.nibio.vips.logic.controller.session.PointOfInterestBean; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationGroupController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationGroupController.java index 113eca4917064c2b6646a0acd7a7687a3686a2c0..a1325ecc2c001559939b40121ba5118b79edbba2 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationGroupController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/OrganizationGroupController.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.controller.servlet; import java.io.IOException; import java.util.List; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.Organization; import no.nibio.vips.logic.entity.OrganizationGroup; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/PointOfInterestController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/PointOfInterestController.java index e1a80dd79fe9824855b0c45213a5447d4cdb9556..d8833ffdb419b1fa33e63f29217b5e614f9ef88a 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/PointOfInterestController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/PointOfInterestController.java @@ -27,13 +27,13 @@ import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Objects; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.entity.Country; import no.nibio.vips.logic.entity.ForecastConfiguration; import no.nibio.vips.logic.entity.ModelInformation; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/SchedulingController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/SchedulingController.java index 24ee6bd18ac16259cc6cdeebf59b64879866be43..1ab060eb4d1a399ed3fc571f2f30608cd457fd9f 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/SchedulingController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/SchedulingController.java @@ -27,13 +27,13 @@ import java.text.MessageFormat; import java.util.Date; import java.util.HashMap; import java.util.List; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.SchedulingBean; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.TaskHistory; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/UserController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/UserController.java index 8f984d62eac24826a3def60eb4760d0be1f3b210..290ffb4f1e06e5222ff74ef29fc8df854d79121e 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/UserController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/UserController.java @@ -31,15 +31,15 @@ import java.util.Map; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.NonUniqueResultException; -import javax.persistence.PersistenceContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.NonUniqueResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.i18n.LanguageUtil; import no.nibio.vips.logic.controller.session.DeleteUserException; import no.nibio.vips.logic.controller.session.UserBean; diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/WeatherStationDataSourceController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/WeatherStationDataSourceController.java index 766d208f92d7924d4d5be151e124a313b34a2b05..8848614f09bea69f8c02107d5e71fcdb9f778f14 100644 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/WeatherStationDataSourceController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/WeatherStationDataSourceController.java @@ -21,11 +21,11 @@ import java.io.IOException; import java.util.List; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/ForecastBean.java b/src/main/java/no/nibio/vips/logic/controller/session/ForecastBean.java index b1c1744f67cf395dc13fa7cf87fab472e0f3a791..58af01d24901d3072b5664f388a3166a6694a2e8 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/ForecastBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/ForecastBean.java @@ -30,18 +30,18 @@ import java.util.UUID; import java.util.logging.Level; import java.util.logging.Logger; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; -import javax.ws.rs.ProcessingException; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.GenericType; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; +import jakarta.ws.rs.ProcessingException; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.GenericType; +import jakarta.ws.rs.core.Response; import org.apache.commons.lang.StringUtils; import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget; import org.slf4j.LoggerFactory; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/MessageBean.java b/src/main/java/no/nibio/vips/logic/controller/session/MessageBean.java index 13d140ac2a770c3c9a7ccfda9554d8fae5e39402..6fe8c2e735f2e05a68c81cb49fd69973916dfec5 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/MessageBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/MessageBean.java @@ -26,11 +26,11 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; import no.nibio.vips.logic.entity.Message; import no.nibio.vips.logic.entity.MessageIllustration; import no.nibio.vips.logic.entity.MessageIllustrationCaptionLocale; @@ -43,7 +43,7 @@ import no.nibio.vips.logic.entity.Organization; import no.nibio.vips.logic.entity.VipsLogicUser; import no.nibio.vips.logic.util.SystemTime; import no.nibio.web.forms.FormField; -import org.apache.commons.fileupload.FileItem; +import org.apache.commons.fileupload2.core.FileItem; import org.apache.commons.io.FilenameUtils; /** @@ -186,7 +186,7 @@ public class MessageBean { cropCategoryIds.add(Integer.valueOf(cropCategoryId)); } } - message.setCropCategoryIds(cropCategoryIds.toArray(new Integer[cropCategoryIds.size()])); + message.setCropCategoryIds(cropCategoryIds); return message; } @@ -224,7 +224,7 @@ public class MessageBean { } // Store file - item.write(illustration); + item.write(illustration.toPath()); // Update MessageIllustrations message = em.merge(message); diff --git a/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java b/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java index 99a5f3c304414d0c40f218fd7a03323e694c7631..804178624ab6f309822e4e0968f85e05c9f58522 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java @@ -18,42 +18,62 @@ package no.nibio.vips.logic.controller.session; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ObjectNode; -import com.ibm.icu.util.ULocale; - import java.io.File; import java.io.IOException; import java.nio.file.Files; -import java.nio.file.Paths; import java.nio.file.Path; +import java.nio.file.Paths; import java.nio.file.StandardOpenOption; -import java.util.*; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import java.util.Map.Entry; +import java.util.Objects; +import java.util.ResourceBundle; +import java.util.Set; import java.util.function.Function; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; -import javax.servlet.http.HttpServletRequest; - -import no.nibio.vips.logic.entity.*; -import no.nibio.vips.logic.i18n.SessionLocaleUtil; -import no.nibio.vips.logic.util.SystemTime; import org.apache.commons.codec.binary.Base64; -import no.nibio.vips.observationdata.ObservationDataSchema; -import no.nibio.vips.observationdata.ObservationDataSchemaPK; -import org.apache.commons.fileupload.FileItem; +import org.apache.commons.fileupload2.core.FileItem; import org.apache.commons.io.FilenameUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.wololo.geojson.Feature; import org.wololo.geojson.FeatureCollection; import org.wololo.geojson.GeoJSONFactory; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.ibm.icu.util.ULocale; +import jakarta.ejb.EJB; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; +import jakarta.servlet.http.HttpServletRequest; +import no.nibio.vips.logic.entity.CropCategory; +import no.nibio.vips.logic.entity.Gis; +import no.nibio.vips.logic.entity.Observation; +import no.nibio.vips.logic.entity.ObservationFormShortcut; +import no.nibio.vips.logic.entity.ObservationIllustration; +import no.nibio.vips.logic.entity.ObservationIllustrationPK; +import no.nibio.vips.logic.entity.ObservationStatusType; +import no.nibio.vips.logic.entity.ObservationTimeSeries; +import no.nibio.vips.logic.entity.Organism; +import no.nibio.vips.logic.entity.Organization; +import no.nibio.vips.logic.entity.PointOfInterest; +import no.nibio.vips.logic.entity.PolygonService; +import no.nibio.vips.logic.entity.VipsLogicUser; +import no.nibio.vips.logic.i18n.SessionLocaleUtil; +import no.nibio.vips.logic.util.SystemTime; +import no.nibio.vips.observationdata.ObservationDataSchema; +import no.nibio.vips.observationdata.ObservationDataSchemaPK; /** * @author Tor-Einar Skog <tor-einar.skog@nibio.no> @@ -409,7 +429,7 @@ public class ObservationBean { } // Store file - item.write(illustration); + item.write(illustration.toPath()); // Update MessageIllustrations observation = em.merge(observation); @@ -603,10 +623,11 @@ public class ObservationBean { List<CropCategory> cropCategories = em.createNamedQuery("CropCategory.findByCropCategoryIds", CropCategory.class) .setParameter("cropCategoryIds", cropCategoryId) .getResultList(); - List<Integer> cropIds = new ArrayList(cropCategories.stream().flatMap(cC -> Arrays.asList(cC.getCropOrganismIds()).stream()).collect(Collectors.toSet())); + List<Integer> cropIds = new ArrayList(cropCategories.stream().flatMap(cC -> cC.getCropOrganismIds().stream()).collect(Collectors.toSet())); sql += "AND crop_organism_id IN (:cropOrganismIds) \n"; parameters.put("cropOrganismIds", cropIds); + //parameters.put("cropOrganismIds", List.of(5)); } // Filter for dates if (from != null) { diff --git a/src/main/java/no/nibio/vips/logic/controller/session/ObservationTimeSeriesBean.java b/src/main/java/no/nibio/vips/logic/controller/session/ObservationTimeSeriesBean.java index 9f11580789bd659f6df481824248564746e2bbb8..627002b9b0d6ac5e0680c346f8ed715f4c069b12 100644 --- a/src/main/java/no/nibio/vips/logic/controller/session/ObservationTimeSeriesBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/ObservationTimeSeriesBean.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.controller.session; import java.util.*; -import javax.ejb.EJB; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; +import jakarta.ejb.EJB; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; import no.nibio.vips.logic.entity.ObservationTimeSeries; import no.nibio.vips.logic.entity.PointOfInterest; import no.nibio.vips.logic.entity.VipsLogicUser; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/OrganismBean.java b/src/main/java/no/nibio/vips/logic/controller/session/OrganismBean.java index 44146a190e1048a5eadcc27359b160b088788fb6..52b99767e420117cbbd5819fc5e85f3c7e36273c 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/OrganismBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/OrganismBean.java @@ -33,11 +33,11 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; import no.nibio.vips.logic.entity.CropCategory; import no.nibio.vips.logic.entity.CropPest; import no.nibio.vips.logic.entity.DbUpdate; @@ -419,7 +419,7 @@ public class OrganismBean { cropCategories.stream() .filter((cc) -> (cc.getCropOrganismIds() != null)) .forEachOrdered((cc) -> { - retVal.addAll(Arrays.asList(cc.getCropOrganismIds())); + retVal.addAll(cc.getCropOrganismIds()); }); return retVal; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/PointOfInterestBean.java b/src/main/java/no/nibio/vips/logic/controller/session/PointOfInterestBean.java index 22229cf81bc468edeed0512b3f2a87923bec3c42..5a4cd503af54862857e7d1f5f2dbb49173e7d6be 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/PointOfInterestBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/PointOfInterestBean.java @@ -33,13 +33,13 @@ import java.util.List; import java.util.ResourceBundle; import java.util.Set; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.ejb.LocalBean; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; +import jakarta.ejb.EJB; +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; import no.nibio.vips.gis.GISUtil; import no.nibio.vips.logic.entity.ExternalResource; import no.nibio.vips.logic.entity.ExternalResourceType; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java b/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java index 4ba5b84b7c265f39f60a687fd2de288a1d16e096..44f498c3a525eb55051bfc117496b6fa3ca8ea99 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java @@ -37,16 +37,16 @@ import java.util.Set; import java.util.SortedMap; import java.util.TimeZone; import java.util.TreeMap; -import javax.ejb.EJB; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.GenericType; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.GenericType; +import jakarta.ws.rs.core.Response; import no.nibio.vips.coremanager.service.ManagerResource; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.ModelRunRequest; diff --git a/src/main/java/no/nibio/vips/logic/controller/session/SessionControllerGetter.java b/src/main/java/no/nibio/vips/logic/controller/session/SessionControllerGetter.java index be60d07964cf56c465790019eed7d95559208aa7..dc399f9c705b8f310eaeb9c88b4994dcfd2a57d1 100644 --- a/src/main/java/no/nibio/vips/logic/controller/session/SessionControllerGetter.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/SessionControllerGetter.java @@ -26,7 +26,7 @@ import no.nibio.vips.logic.messaging.MessagingBean; /** * Thought this was oblivious because of @EJB, but it turns out this is necessary when invoking beans from outside managed beans! - * @copyright 2013-2022 <a href="http://www.nibio.no/">NIBIO</a> + * @copyright 2013-2025 <a href="http://www.nibio.no/">NIBIO</a> * @author Tor-Einar Skog <tor-einar.skog@nibio.no> */ @@ -34,7 +34,7 @@ public class SessionControllerGetter { // This obviously has to be changed when changing the application name in Maven // TODO: Refactor out to System properties (e.g. in standalone.xml in JBoss/WildFly) - public static final String JNDI_PATH = "java:global/VIPSLogic-2024.3/"; + public static final String JNDI_PATH = "java:global/VIPSLogic-2025.1/"; public static SchedulingBean getSchedulingBean() { diff --git a/src/main/java/no/nibio/vips/logic/controller/session/UserBean.java b/src/main/java/no/nibio/vips/logic/controller/session/UserBean.java index c6f0a121acff084defa5cad061119032c1ee3910..d56eb126ad071ddf74b7faa54d9c84954c1783f5 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/UserBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/UserBean.java @@ -41,14 +41,14 @@ import java.util.Set; import java.util.UUID; import java.util.logging.Level; import java.util.logging.Logger; -import javax.ejb.EJB; -import javax.ejb.LocalBean; -import javax.ejb.Stateless; -import javax.persistence.*; -import javax.servlet.http.HttpServletRequest; -import javax.validation.ConstraintViolation; -import javax.validation.ConstraintViolationException; -import javax.ws.rs.core.HttpHeaders; +import jakarta.ejb.EJB; +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; +import jakarta.persistence.*; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ConstraintViolationException; +import jakarta.ws.rs.core.HttpHeaders; import no.nibio.vips.logic.authenticate.PasswordValidationException; import no.nibio.vips.logic.entity.*; diff --git a/src/main/java/no/nibio/vips/logic/entity/Country.java b/src/main/java/no/nibio/vips/logic/entity/Country.java index 1f68fc8ffd8dc130d6d6cc8fe2d24b1f94c788f3..acea2f44087e0f8054bd15101cb3f24a3c4fb036 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Country.java +++ b/src/main/java/no/nibio/vips/logic/entity/Country.java @@ -21,19 +21,19 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Locale; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.JoinTable; +import jakarta.persistence.ManyToMany; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/CropCategory.java b/src/main/java/no/nibio/vips/logic/entity/CropCategory.java index 43cc458731c8f1194194a494ec5fe27b2659be7b..f1d249e6b7eabe376268d667c8e2d5d2817760f9 100755 --- a/src/main/java/no/nibio/vips/logic/entity/CropCategory.java +++ b/src/main/java/no/nibio/vips/logic/entity/CropCategory.java @@ -19,27 +19,28 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonIgnore; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; import java.io.Serializable; import java.util.Arrays; import java.util.HashSet; +import java.util.List; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import java.util.stream.Collectors; +import jakarta.persistence.Basic; +import jakarta.persistence.CascadeType; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; -import no.nibio.vips.logic.util.IntegerArrayUserType; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; + /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -48,7 +49,6 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "crop_category") @XmlRootElement -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) @NamedQueries({ @NamedQuery(name = "CropCategory.findAll", query = "SELECT c FROM CropCategory c"), @NamedQuery(name = "CropCategory.findByCropCategoryId", query = "SELECT c FROM CropCategory c WHERE c.cropCategoryId = :cropCategoryId"), @@ -70,9 +70,9 @@ public class CropCategory implements Serializable { private String defaultName; @OneToMany(cascade = CascadeType.ALL, mappedBy = "cropCategoryId", fetch = FetchType.EAGER) private Set<CropCategoryLocal> cropCategoryLocalSet; - @Type(type = "IntegerArray") @Column(name = "crop_organism_ids") - private Integer[] cropOrganismIds; + @Type(ListArrayType.class) + private List<Integer> cropOrganismIds; @Column(name = "organization_id") private Integer organizationId; @Column(name = "max_hierarchy_category_id") @@ -101,11 +101,11 @@ public class CropCategory implements Serializable { this.defaultName = defaultName; } - public Integer[] getCropOrganismIds() { + public List<Integer> getCropOrganismIds() { return cropOrganismIds; } - public void setCropOrganismIds(Integer[] cropOrganismIds) { + public void setCropOrganismIds(List<Integer> cropOrganismIds) { this.cropOrganismIds = cropOrganismIds; } @@ -203,18 +203,18 @@ public class CropCategory implements Serializable { } else { - cropSet = new HashSet<>(Arrays.asList(this.getCropOrganismIds())); + cropSet = new HashSet<>(this.getCropOrganismIds()); } cropSet.add(organismId); - this.setCropOrganismIds(cropSet.toArray(new Integer[cropSet.size()])); + this.setCropOrganismIds(cropSet.stream().collect(Collectors.toList())); } public void removeCropOrganismId(Integer organismId) { if(this.getCropOrganismIds() != null) { - Set<Integer> cropSet = new HashSet<>(Arrays.asList(this.getCropOrganismIds())); + Set<Integer> cropSet = new HashSet<>(this.getCropOrganismIds()); cropSet.remove(organismId); - this.setCropOrganismIds(cropSet.toArray(new Integer[cropSet.size()])); + this.setCropOrganismIds(cropSet.stream().collect(Collectors.toList())); } } diff --git a/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocal.java b/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocal.java index 7521198053302f0fdb327db9f995ff76301a040f..98074bf6172b08526e05cfb69e1c3d6c3c44c486 100755 --- a/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocal.java +++ b/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocal.java @@ -19,13 +19,13 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocalPK.java b/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocalPK.java index b8e75cd1eae04abe22a37f976b0d0c7f7e63392e..3e0ebfa926601fe6c92b317c8122ff67f72fd477 100755 --- a/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocalPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/CropCategoryLocalPK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/CropPest.java b/src/main/java/no/nibio/vips/logic/entity/CropPest.java index 0443494be304d26850ffadbd74bc9e4a32503eb2..614352ff4ba05caa3452659eb8d4934fc64b6df2 100755 --- a/src/main/java/no/nibio/vips/logic/entity/CropPest.java +++ b/src/main/java/no/nibio/vips/logic/entity/CropPest.java @@ -19,19 +19,18 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; +import java.util.List; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; -import no.nibio.vips.logic.util.IntegerArrayUserType; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -39,7 +38,6 @@ import org.hibernate.annotations.TypeDefs; */ @Entity @Table(name = "crop_pest") -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) @XmlRootElement @NamedQueries({ @NamedQuery(name = "CropPest.findAll", query = "SELECT c FROM CropPest c"), @@ -55,9 +53,9 @@ public class CropPest implements Serializable { @NotNull @Column(name = "crop_organism_id") private Integer cropOrganismId; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "pest_organism_ids") - private Integer[] pestOrganismIds; + private List<Integer> pestOrganismIds; @Column(name = "include_all_child_crops") private Boolean includeAllChildCrops; @@ -76,11 +74,11 @@ public class CropPest implements Serializable { this.cropOrganismId = cropOrganismId; } - public Integer[] getPestOrganismIds() { + public List<Integer> getPestOrganismIds() { return pestOrganismIds; } - public void setPestOrganismIds(Integer[] pestOrganismIds) { + public void setPestOrganismIds(List<Integer> pestOrganismIds) { this.pestOrganismIds = pestOrganismIds; } diff --git a/src/main/java/no/nibio/vips/logic/entity/Currency.java b/src/main/java/no/nibio/vips/logic/entity/Currency.java index 5b2e74be654b9b884db8b714083be023fc5fa868..f7fe3adc7be7cca360870603708eb775e805549a 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Currency.java +++ b/src/main/java/no/nibio/vips/logic/entity/Currency.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Collection; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; diff --git a/src/main/java/no/nibio/vips/logic/entity/DbUpdate.java b/src/main/java/no/nibio/vips/logic/entity/DbUpdate.java index 6b74e19df6a222160cb59f8443183d2be658a449..48172b8de6c0686e7f86a112d75100d45ecc2a8d 100644 --- a/src/main/java/no/nibio/vips/logic/entity/DbUpdate.java +++ b/src/main/java/no/nibio/vips/logic/entity/DbUpdate.java @@ -20,17 +20,17 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/ExternalResource.java b/src/main/java/no/nibio/vips/logic/entity/ExternalResource.java index 19007bed6afaecd6dea8da79e47c7c04441643b8..6fe731e766a9a66e4041d0e5a9e6c924e62dfec8 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ExternalResource.java +++ b/src/main/java/no/nibio/vips/logic/entity/ExternalResource.java @@ -20,21 +20,21 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.ManyToMany; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToMany; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/ExternalResourceType.java b/src/main/java/no/nibio/vips/logic/entity/ExternalResourceType.java index f6076e6762d6192866082b48fa583d1f2ba74bac..6d2cdc4dc9c47918013e86b482682e39fb42f8de 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ExternalResourceType.java +++ b/src/main/java/no/nibio/vips/logic/entity/ExternalResourceType.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastConfiguration.java b/src/main/java/no/nibio/vips/logic/entity/ForecastConfiguration.java index 7be6c11a3b2a35155dc61cf1421ca573a8c7dfba..dbb041d3031c109df59ef7cba5c618f33b4a6e0f 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastConfiguration.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastConfiguration.java @@ -20,34 +20,32 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; import java.util.Set; -import javax.persistence.Basic; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; import java.util.List; import java.util.TimeZone; -import javax.persistence.Transient; -import no.nibio.vips.logic.util.IntegerArrayUserType; +import jakarta.persistence.Transient; import no.nibio.vips.util.WeatherUtil; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; /** * @copyright 2014-2024 <a href="http://www.nibio.no/">NIBIO</a> @@ -56,7 +54,6 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "forecast_configuration") @XmlRootElement -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) @NamedQueries({ @NamedQuery(name = "ForecastConfiguration.findAll", query = "SELECT f FROM ForecastConfiguration f WHERE f.isPrivate = FALSE"), @NamedQuery(name = "ForecastConfiguration.findByForecastConfigurationId", query = "SELECT f FROM ForecastConfiguration f WHERE f.forecastConfigurationId = :forecastConfigurationId"), @@ -134,9 +131,9 @@ public class ForecastConfiguration implements Serializable, Comparable { this.useGridWeatherData = useGridWeatherData; } - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "grid_weather_station_point_of_interest_ids") - private Integer[] gridWeatherStationPointOfInterestIds; + private List<Integer> gridWeatherStationPointOfInterestIds; @Transient private WeatherUtil weatherUtil; @@ -439,14 +436,14 @@ public class ForecastConfiguration implements Serializable, Comparable { /** * @return the gridWeatherStationPointOfInterestIds */ - public Integer[] getGridWeatherStationPointOfInterestIds() { + public List<Integer> getGridWeatherStationPointOfInterestIds() { return gridWeatherStationPointOfInterestIds; } /** * @param gridWeatherStationPointOfInterestIds the gridWeatherStationPointOfInterestIds to set */ - public void setGridWeatherStationPointOfInterestIds(Integer[] gridWeatherStationPointOfInterestIds) { + public void setGridWeatherStationPointOfInterestIds(List<Integer> gridWeatherStationPointOfInterestIds) { this.gridWeatherStationPointOfInterestIds = gridWeatherStationPointOfInterestIds; } } diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfiguration.java b/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfiguration.java index a37304d0f422f58d619b36bd721d162ab5ea7fb1..4a2d41e8c4450305ff0a59d7b06eefb9730b0dfa 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfiguration.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfiguration.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfigurationPK.java b/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfigurationPK.java index e0a82aeac9896282e23de90b5a61204841b8d321..84cf5675c038895824e5dc434eecae5f1e042d55 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfigurationPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastModelConfigurationPK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastResult.java b/src/main/java/no/nibio/vips/logic/entity/ForecastResult.java index 1b4f7e400368a478084d69480af0a80adca2473b..54a66fa806fd77e1f02580af88f53b8177ba79df 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastResult.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastResult.java @@ -26,18 +26,18 @@ import java.util.Map; import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; import javax.xml.bind.annotation.XmlRootElement; import no.nibio.vips.entity.Result; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastSummary.java b/src/main/java/no/nibio/vips/logic/entity/ForecastSummary.java index 5cb3f66e0847de300c57d98bcb5da6188e363e47..88f201dc6087b7b1cad131f5007ededca5940915 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastSummary.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastSummary.java @@ -20,14 +20,14 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import javax.xml.bind.annotation.XmlRootElement; /** @@ -41,7 +41,7 @@ import javax.xml.bind.annotation.XmlRootElement; @NamedQuery(name = "ForecastSummary.findAll", query = "SELECT f FROM ForecastSummary f"), @NamedQuery(name = "ForecastSummary.findByForecastConfigurationId", query = "SELECT f FROM ForecastSummary f WHERE f.forecastSummaryPK.forecastConfigurationId = :forecastConfigurationId"), @NamedQuery(name = "ForecastSummary.findByForecastConfigurationIds", query = "SELECT f FROM ForecastSummary f WHERE f.forecastSummaryPK.forecastConfigurationId IN(:forecastConfigurationIds)"), - @NamedQuery(name = "ForecastSummary.findByOrganizationId", query = "SELECT f FROM ForecastSummary f WHERE f.forecastSummaryPK.forecastConfigurationId IN(SELECT f1.forecastConfigurationId FROM ForecastConfiguration f1 WHERE f1.vipsLogicUserId IN (SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId=:organizationId))"), + @NamedQuery(name = "ForecastSummary.findByOrganizationId", query = "SELECT f FROM ForecastSummary f WHERE f.forecastSummaryPK.forecastConfigurationId IN(SELECT f1.forecastConfigurationId FROM ForecastConfiguration f1 WHERE f1.vipsLogicUserId.userId IN (SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId))"), @NamedQuery(name = "ForecastSummary.findBySummaryForDate", query = "SELECT f FROM ForecastSummary f WHERE f.forecastSummaryPK.summaryForDate = :summaryForDate"), @NamedQuery(name = "ForecastSummary.findBySummaryCreatedTime", query = "SELECT f FROM ForecastSummary f WHERE f.summaryCreatedTime = :summaryCreatedTime"), @NamedQuery(name = "ForecastSummary.findByWarningStatus", query = "SELECT f FROM ForecastSummary f WHERE f.warningStatus = :warningStatus")}) diff --git a/src/main/java/no/nibio/vips/logic/entity/ForecastSummaryPK.java b/src/main/java/no/nibio/vips/logic/entity/ForecastSummaryPK.java index 4980278e3057d63ce00fb1cbed0c6e9e8527c7fb..1df735c7a2c8c548089cad5df09d308cd362bff0 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ForecastSummaryPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/ForecastSummaryPK.java @@ -20,12 +20,12 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.NotNull; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/Gis.java b/src/main/java/no/nibio/vips/logic/entity/Gis.java index e61037ea3c04998a95f845a86e150e60c8770251..1fe5fef3da0be6c16cf385597a2e4e046782b177 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Gis.java +++ b/src/main/java/no/nibio/vips/logic/entity/Gis.java @@ -22,15 +22,15 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import org.locationtech.jts.geom.Coordinate; import org.locationtech.jts.geom.Geometry; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; //import org.hibernate.annotations.Type; diff --git a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategory.java b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategory.java index 3133b1716a60239642633e90c08e0bbb4b1a8f09..6e36162ce16df01c11cc8af6548f8dcde50a2307 100755 --- a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategory.java +++ b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategory.java @@ -20,18 +20,18 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.CascadeType; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocale.java b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocale.java index e31e3744d70d00fdf3f701b2d47830615f793195..f898e378d4e6a89d821ef713a7d6be2f5854453b 100755 --- a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocale.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocalePK.java b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocalePK.java index d4542edf467855f4d647d02f586237fe0abe38d6..469898f2775bbfeb951c93889e0031f5eab17c61 100755 --- a/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocalePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/HierarchyCategoryLocalePK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/MapLayer.java b/src/main/java/no/nibio/vips/logic/entity/MapLayer.java index f18cf17f6300c34c5d991b69b2cca7ac01921182..7fe45941d7962fa19eb81be6f471155b5da85041 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MapLayer.java +++ b/src/main/java/no/nibio/vips/logic/entity/MapLayer.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonProperty; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/Message.java b/src/main/java/no/nibio/vips/logic/entity/Message.java index 1bd92c6064cc3c72c991b02744860c7170b17a8f..c58853e0fc4bd099bceb51c98bb6d11b721f4ec2 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Message.java +++ b/src/main/java/no/nibio/vips/logic/entity/Message.java @@ -24,29 +24,27 @@ import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.Set; -import javax.persistence.Basic; -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.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; +import jakarta.persistence.Basic; +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.JoinTable; +import jakarta.persistence.ManyToMany; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; import javax.xml.bind.annotation.XmlRootElement; -import no.nibio.vips.logic.util.IntegerArrayUserType; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> @@ -55,7 +53,6 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "message") @XmlRootElement -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) @NamedQueries({ @NamedQuery(name = "Message.findAll", query = "SELECT m FROM Message m"), @NamedQuery(name = "Message.findByMessageId", query = "SELECT m FROM Message m WHERE m.messageId = :messageId"), @@ -75,7 +72,7 @@ public class Message implements Serializable { private Set<MessageIllustration> messageIllustrationSet; private Set<MessageLocale> messageLocaleSet; private Integer organizationId; - private Integer[] cropCategoryIds; + private List<Integer> cropCategoryIds; public Message() { } @@ -276,16 +273,16 @@ public class Message implements Serializable { /** * @return the cropCategoryIds */ - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name="crop_category_ids") - public Integer[] getCropCategoryIds() { + public List<Integer> getCropCategoryIds() { return cropCategoryIds; } /** * @param cropCategoryIds the cropCategoryIds to set */ - public void setCropCategoryIds(Integer[] cropCategoryIds) { + public void setCropCategoryIds(List<Integer> cropCategoryIds) { this.cropCategoryIds = cropCategoryIds; } diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageIllustration.java b/src/main/java/no/nibio/vips/logic/entity/MessageIllustration.java index c695472e1de2a68a2cf2a58570ced4e96fef1584..55b3e70c9e9cd09f0a87479984ecbd99a354ad41 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageIllustration.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageIllustration.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Transient; +import jakarta.persistence.CascadeType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocale.java b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocale.java index da38390a325fd8748b717bcca66f7df353b2975d..3a21bf652a642d5758f681a345f7112e2d1b4deb 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocale.java @@ -19,17 +19,17 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.JoinColumn; -import javax.persistence.JoinColumns; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.JoinColumns; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocalePK.java b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocalePK.java index fe5a6c87acca4f56971f72a4e232754f9120ffa7..5cf78327bdba7b6099306baa6c875c61fd4480fc 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocalePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationCaptionLocalePK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationPK.java b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationPK.java index b33858ef08c4c33bba77766d60c67e7ed4a0c9dd..b0da8810fabf47f9310b0eeb6ee3105267066bbb 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageIllustrationPK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageLocale.java b/src/main/java/no/nibio/vips/logic/entity/MessageLocale.java index e91b5fe99657e2169ea9068b17df1d6f85940136..4bf86c97026c91588a645ccae7607dea1fc4793e 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageLocale.java @@ -20,20 +20,20 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageLocalePK.java b/src/main/java/no/nibio/vips/logic/entity/MessageLocalePK.java index a894bcd50a007ec3ccbc33aedb19b8195a6008db..3e6960eb4d806e5fb3805d22b528f77e53d291df 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageLocalePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageLocalePK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageTag.java b/src/main/java/no/nibio/vips/logic/entity/MessageTag.java index 226e112987ba14845666ee3eb2f8e015c6a350df..e2c33d280f8059181562b4e418776dc12fdb0738 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageTag.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageTag.java @@ -20,20 +20,20 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.ManyToMany; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToMany; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageTagLocale.java b/src/main/java/no/nibio/vips/logic/entity/MessageTagLocale.java index 90e4fd9e25f3431c4d84e446cfeb52abaa86e912..0c80e15b50e88bf7ab9f88633c5d07b12273ea55 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageTagLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageTagLocale.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/MessageTagLocalePK.java b/src/main/java/no/nibio/vips/logic/entity/MessageTagLocalePK.java index 3c0814ecebdb7ca37d7aff1189be7d28537bf35b..b36a727b6c4446243b86f7e545e97631029eaedd 100755 --- a/src/main/java/no/nibio/vips/logic/entity/MessageTagLocalePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/MessageTagLocalePK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/ModelInformation.java b/src/main/java/no/nibio/vips/logic/entity/ModelInformation.java index ed19d2224367fa6596a6afa598346bc1e46e3ad7..9c3240d9907d05949667ab349d40598647936d05 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ModelInformation.java +++ b/src/main/java/no/nibio/vips/logic/entity/ModelInformation.java @@ -20,9 +20,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.*; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/Observation.java b/src/main/java/no/nibio/vips/logic/entity/Observation.java index 0b244dcfbb9170f91e9fe3c0eb296c30cd90d419..478e8dd610a6ebe5e9d37df9d499f097afd80445 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Observation.java +++ b/src/main/java/no/nibio/vips/logic/entity/Observation.java @@ -19,8 +19,8 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.*; -import javax.validation.constraints.NotNull; +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; import com.fasterxml.jackson.annotation.JsonIgnore; import java.util.ArrayList; @@ -28,15 +28,14 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; -import javax.validation.constraints.Size; +import jakarta.validation.constraints.Size; import no.nibio.vips.logic.util.GISEntityUtil; import no.nibio.vips.gis.GISUtil; import no.nibio.vips.logic.entity.rest.ObservationListItem; -import no.nibio.vips.logic.util.StringJsonUserType; import no.nibio.vips.observationdata.ObservationDataSchema; -import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import org.hibernate.annotations.JdbcTypeCode; +import org.hibernate.type.SqlTypes; + /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -45,7 +44,7 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "observation") @XmlRootElement -@TypeDefs( {@TypeDef( name= "StringJsonObject", typeClass = StringJsonUserType.class)}) +//@TypeDefs( {@TypeDef( name= "StringJsonObject", typeClass = StringJsonUserType.class)}) @NamedQueries({ @NamedQuery(name = "Observation.findAll", query = "SELECT o FROM Observation o"), @@ -58,11 +57,11 @@ import org.hibernate.annotations.TypeDefs; @NamedQuery(name = "Observation.findByUserIdAndPeriod", query = "SELECT o FROM Observation o WHERE o.timeOfObservation BETWEEN :start AND :end AND o.userId IN(:userId)"), @NamedQuery(name = "Observation.findByUserIdAndStatusTypeId", query = "SELECT o FROM Observation o WHERE o.userId IN(:userId) AND o.statusTypeId= :statusTypeId"), @NamedQuery(name = "Observation.findByUserIdAndOrganism", query = "SELECT o FROM Observation o WHERE o.userId IN(:userId) AND o.organism = :organism"), - @NamedQuery(name = "Observation.findByOrganizationId", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId))"), - @NamedQuery(name = "Observation.findByOrganizationIdAndPeriod", query = "SELECT o FROM Observation o WHERE o.timeOfObservation BETWEEN :start AND :end AND o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId))"), - @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeId", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) AND o.statusTypeId= :statusTypeId"), - @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeIdAndBroadcastMessage", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) AND o.statusTypeId= :statusTypeId AND o.broadcastMessage IS TRUE"), - @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeIdAndBroadcastMessageAndPeriod", query = "SELECT o FROM Observation o WHERE o.timeOfObservation BETWEEN :start AND :end AND o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) AND o.statusTypeId= :statusTypeId AND o.broadcastMessage IS TRUE"), + @NamedQuery(name = "Observation.findByOrganizationId", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId.organizationId = :organizationId))"), + @NamedQuery(name = "Observation.findByOrganizationIdAndPeriod", query = "SELECT o FROM Observation o WHERE o.timeOfObservation BETWEEN :start AND :end AND o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId))"), + @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeId", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId.organizationId = :organizationId)) AND o.statusTypeId= :statusTypeId"), + @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeIdAndBroadcastMessage", query = "SELECT o FROM Observation o WHERE o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) AND o.statusTypeId= :statusTypeId AND o.broadcastMessage IS TRUE"), + @NamedQuery(name = "Observation.findByOrganizationIdAndStatusTypeIdAndBroadcastMessageAndPeriod", query = "SELECT o FROM Observation o WHERE o.timeOfObservation BETWEEN :start AND :end AND o.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) AND o.statusTypeId= :statusTypeId AND o.broadcastMessage IS TRUE"), @NamedQuery(name = "Observation.findByOrganism", query = "SELECT o FROM Observation o WHERE o.organism = :organism"), @NamedQuery(name = "Observation.findFirstByOrganism", query = "SELECT o FROM Observation o WHERE o.organism = :organism AND o.timeOfObservation = (SELECT MIN(ob.timeOfObservation) FROM Observation ob WHERE ob.organism = :organism)"), @NamedQuery(name = "Observation.findByTimeOfObservation", query = "SELECT o FROM Observation o WHERE o.timeOfObservation = :timeOfObservation") @@ -467,7 +466,7 @@ public class Observation implements Serializable, no.nibio.vips.observation.Obse /** * @return the observationData */ - @Type(type = "StringJsonObject") + @JdbcTypeCode(SqlTypes.JSON) @Column(name = "observation_data") @Override public String getObservationData() { diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcut.java b/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcut.java index ab8bf912863a26e1ee1e9acd72d8f079358ed210..38036f496ff2a4de5784ab01242e27ddb5834948 100644 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcut.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcut.java @@ -20,19 +20,19 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcutLocale.java b/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcutLocale.java index 824637fc5b10319216827f490037f90ed7c07cce..f32172805424bd8e7145ef5cc65a7b2e7d80aa4d 100644 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcutLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationFormShortcutLocale.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationIllustration.java b/src/main/java/no/nibio/vips/logic/entity/ObservationIllustration.java index dcb3a55e4ffeff53060d9fc149c60ea7fbbe4a81..5e114908cab3895e54df481be7d494add28c76b9 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationIllustration.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationIllustration.java @@ -19,12 +19,12 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationIllustrationPK.java b/src/main/java/no/nibio/vips/logic/entity/ObservationIllustrationPK.java index b0eae958a4b9fdbe6080ee0846a26fd49f47f930..2868280692c4d1fc1b93b65b51ab45a25d5b9683 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationIllustrationPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationIllustrationPK.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationMethod.java b/src/main/java/no/nibio/vips/logic/entity/ObservationMethod.java index f9148efafe379fe6b4718fe7ac9e0449f59a78d5..57efa06905aedc5441185aa83518196887410649 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationMethod.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationMethod.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationStatusType.java b/src/main/java/no/nibio/vips/logic/entity/ObservationStatusType.java index f00be18570b9eb9b3deced9a023eb65c96130d98..a8451fe405d1c23a12fd740113f89db8752b9caf 100755 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationStatusType.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationStatusType.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/ObservationTimeSeries.java b/src/main/java/no/nibio/vips/logic/entity/ObservationTimeSeries.java index d7adac276d965c3bae93528548e0128be8b5c0f3..24315611140e1243edc12a0d0376aa0835566a21 100644 --- a/src/main/java/no/nibio/vips/logic/entity/ObservationTimeSeries.java +++ b/src/main/java/no/nibio/vips/logic/entity/ObservationTimeSeries.java @@ -18,12 +18,9 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonIgnore; -import no.nibio.vips.logic.util.StringJsonUserType; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; -import javax.persistence.*; -import javax.validation.constraints.NotNull; +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; import java.io.Serializable; import java.util.Date; @@ -31,12 +28,11 @@ import java.util.Date; @Entity @Table(name = "observation_time_series") @XmlRootElement -@TypeDefs({@TypeDef(name = "StringJsonObject", typeClass = StringJsonUserType.class)}) @NamedQueries({ @NamedQuery(name = "ObservationTimeSeries.findAll", query = "SELECT ots FROM ObservationTimeSeries ots"), @NamedQuery(name = "ObservationTimeSeries.findByObservationTimeSeriesId", query = "SELECT ots FROM ObservationTimeSeries ots WHERE ots.observationTimeSeriesId = :id"), @NamedQuery(name = "ObservationTimeSeries.findByObservationTimeSeriesIds", query = "SELECT ots FROM ObservationTimeSeries ots WHERE ots.observationTimeSeriesId IN :observationTimeSeriesIds"), - @NamedQuery(name = "ObservationTimeSeries.findByOrganizationId", query = "SELECT ots FROM ObservationTimeSeries ots WHERE ots.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId))"), + @NamedQuery(name = "ObservationTimeSeries.findByOrganizationId", query = "SELECT ots FROM ObservationTimeSeries ots WHERE ots.userId IN(SELECT v.userId FROM VipsLogicUser v WHERE v.organizationId.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId.organizationId = :organizationId))"), @NamedQuery(name = "ObservationTimeSeries.findByUserId", query = "SELECT ots FROM ObservationTimeSeries ots WHERE ots.userId IN(:userId)") }) public class ObservationTimeSeries implements Serializable { diff --git a/src/main/java/no/nibio/vips/logic/entity/Organism.java b/src/main/java/no/nibio/vips/logic/entity/Organism.java index fa0e0c803796e47c9874318982db90434bdde491..07a86feb80fcd20b790888bc8b746bcf3b8b91e7 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Organism.java +++ b/src/main/java/no/nibio/vips/logic/entity/Organism.java @@ -23,21 +23,21 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.persistence.Basic; -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.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResource.java b/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResource.java index 7c2194f05e87a7a6cb214de4f061da020013fb7a..9153293577d6597e7ba7c0aad1df156c7ea6bfc9 100755 --- a/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResource.java +++ b/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResource.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonIgnore; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; diff --git a/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResourcePK.java b/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResourcePK.java index 3f55e08643430c173c82073169518b4bc11f794e..48836b1c2028f59d8b8cd6fdba1815aa8d34ac3a 100755 --- a/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResourcePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/OrganismExternalResourcePK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/OrganismLocale.java b/src/main/java/no/nibio/vips/logic/entity/OrganismLocale.java index 829e8bb4a2c39e4894e8baffcbdd07b33e76e1e7..6eeefa62592946b0f8565fec98bbcda4888b138e 100755 --- a/src/main/java/no/nibio/vips/logic/entity/OrganismLocale.java +++ b/src/main/java/no/nibio/vips/logic/entity/OrganismLocale.java @@ -19,13 +19,13 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/OrganismLocalePK.java b/src/main/java/no/nibio/vips/logic/entity/OrganismLocalePK.java index 452fb3d89b5118adf78c039be00d2c8fe9738434..a82fe9c718f1e8495cfa2d670d6df7e60cc60965 100755 --- a/src/main/java/no/nibio/vips/logic/entity/OrganismLocalePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/OrganismLocalePK.java @@ -18,11 +18,11 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/Organization.java b/src/main/java/no/nibio/vips/logic/entity/Organization.java index 4e5d7e67b0154adde1a7b7ca33c8fba2bd6b438f..ae079270eabd5a98c9ed984885f84953f056fb1a 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Organization.java +++ b/src/main/java/no/nibio/vips/logic/entity/Organization.java @@ -21,24 +21,24 @@ package no.nibio.vips.logic.entity; import org.locationtech.jts.geom.Point; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; -import javax.persistence.FetchType; -import javax.persistence.OneToOne; +import jakarta.persistence.FetchType; +import jakarta.persistence.OneToOne; import org.hibernate.annotations.Type; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/OrganizationGroup.java b/src/main/java/no/nibio/vips/logic/entity/OrganizationGroup.java index 9c62dcced809242ecb839d81505171b8452202a7..a015bf6c2f3a1eb705b725f23198e9f2c77e8e35 100755 --- a/src/main/java/no/nibio/vips/logic/entity/OrganizationGroup.java +++ b/src/main/java/no/nibio/vips/logic/entity/OrganizationGroup.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterest.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterest.java index 1994194e6297c20f3c8f1ca459f539f0283955d7..f3faa7682359ca1ecf4a8cb5d250f825a32641c7 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterest.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterest.java @@ -21,31 +21,31 @@ import java.io.Serializable; import java.util.Date; import java.util.HashMap; import java.util.Map; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.DiscriminatorColumn; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.DiscriminatorColumn; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import com.fasterxml.jackson.annotation.JsonIgnore; import org.locationtech.jts.geom.Geometry; import java.util.Set; -import javax.persistence.CascadeType; -import javax.persistence.DiscriminatorType; -import javax.persistence.DiscriminatorValue; -import javax.persistence.FetchType; -import javax.persistence.OneToMany; +import jakarta.persistence.CascadeType; +import jakarta.persistence.DiscriminatorType; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.FetchType; +import jakarta.persistence.OneToMany; import no.nibio.vips.gis.GISUtil; import org.wololo.geojson.Feature; @@ -63,9 +63,9 @@ import org.wololo.geojson.Feature; @NamedQuery(name = "PointOfInterest.findAll", query = "SELECT p FROM PointOfInterest p ORDER BY p.name ASC"), @NamedQuery(name = "PointOfInterest.findByPointOfInterestId", query = "SELECT p FROM PointOfInterest p WHERE p.pointOfInterestId = :pointOfInterestId"), @NamedQuery(name = "PointOfInterest.findByPointOfInterestIds", query = "SELECT p FROM PointOfInterest p WHERE p.pointOfInterestId IN :pointOfInterestIds"), - @NamedQuery(name = "PointOfInterest.findByOrganizationId", query = "SELECT p FROM PointOfInterest p WHERE p.user IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId=:organizationId OR u.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), - @NamedQuery(name = "PointOfInterest.findByOrganizationIdAndPoiTypes", query = "SELECT p FROM PointOfInterest p WHERE p.pointOfInterestTypeId in :pointOfInterestTypes AND p.user IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId=:organizationId OR u.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), - @NamedQuery(name = "PointOfInterest.findForecastLocationsByOrganizationId", query = "SELECT p FROM PointOfInterest p WHERE p.isForecastLocation IS TRUE AND p.user IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId=:organizationId OR u.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), + @NamedQuery(name = "PointOfInterest.findByOrganizationId", query = "SELECT p FROM PointOfInterest p WHERE p.user.userId IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId = :organizationId OR u.organizationId.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), + @NamedQuery(name = "PointOfInterest.findByOrganizationIdAndPoiTypes", query = "SELECT p FROM PointOfInterest p WHERE p.pointOfInterestTypeId in :pointOfInterestTypes AND p.user.userId IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId = :organizationId OR u.organizationId.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), + @NamedQuery(name = "PointOfInterest.findForecastLocationsByOrganizationId", query = "SELECT p FROM PointOfInterest p WHERE p.isForecastLocation IS TRUE AND p.user.userId IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId = :organizationId OR u.organizationId.organizationId IN (SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)) ORDER BY p.name ASC"), @NamedQuery(name = "PointOfInterest.findByName", query = "SELECT p FROM PointOfInterest p WHERE p.name = :name"), @NamedQuery(name = "PointOfInterest.findByNameCaseInsensitive", query = "SELECT p FROM PointOfInterest p WHERE lower(p.name) = lower(:name)"), @NamedQuery(name = "PointOfInterest.findByUserId", query = "SELECT p FROM PointOfInterest p WHERE p.user = :userId ORDER BY p.name ASC") @@ -141,7 +141,7 @@ public class PointOfInterest implements Serializable, Comparable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Basic(optional = false) - @Column(name = "point_of_interest_id") + @Column(name = "point_of_interest_id", insertable = false, updatable = false) public Integer getPointOfInterestId() { return pointOfInterestId; } diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResource.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResource.java index e3dae66c90e61ddbadc970510372b9ec74f05af5..2bff2efe2e2c4f60911556a955c1feb132e1ca88 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResource.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResource.java @@ -20,17 +20,17 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonIgnore; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResourcePK.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResourcePK.java index 627ae3c98898aa6bb9114f09a7ab0ac92e514197..979d1ac6db7dea7ab38a0d377fca6026e8a3e139 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResourcePK.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestExternalResourcePK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2015 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestType.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestType.java index 834fd4ecba952f50bc62a2a1df34192d987b5eab..5d1f4da6ad552f7466bb6cf309e1e8965aa980ce 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestType.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestType.java @@ -19,18 +19,18 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.DiscriminatorColumn; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.DiscriminatorColumn; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Inheritance; +import jakarta.persistence.InheritanceType; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** @@ -52,7 +52,7 @@ public class PointOfInterestType implements Serializable { @Id @Basic(optional = false) @NotNull - @Column(name = "point_of_interest_type_id") + @Column(name = "point_of_interest_type_id", insertable = false, updatable = false) private Integer pointOfInterestTypeId; @Size(max = 255) @Column(name = "default_name") diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeApiarySite.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeApiarySite.java index b89fc8c0b1a09cb1e3663fd7ba5da886445d4614..c5bd42d1e2dc72b269d8867154cd704c628dc324 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeApiarySite.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeApiarySite.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; /** * @copyright 2023 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeFarm.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeFarm.java index 377f09902a7fb318a8fc4fb071cfdde6e9ae1440..03a7df7bc1146a8151c02d91f7b06ff18079e8ec 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeFarm.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeFarm.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; /** * @copyright 2020 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeField.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeField.java index 5e9c40c04af9d4f02432594ea10795b4b4367657..7954cee2a1b6eac35cad6cf3165a3bde7ffd6c97 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeField.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeField.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; /** * @copyright 2020 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeNursery.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeNursery.java index bcc4945c32ac0f8094734d65950c469abc7d9256..c67cc749f5ce43c11d9f2fa26b99e4700457c1c2 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeNursery.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeNursery.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; /** * @copyright 2023 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeRegion.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeRegion.java index 42293401653e5134c28bc0c95b02b57c84ceb359..279bb5eb71a59003efc23e69e1716eac0f9e6ef8 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeRegion.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeRegion.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; /** * @copyright 2018 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeTrap.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeTrap.java index e9a62eaa503b7a17eb2a9de9e8330a6c3db74ccc..146eaa68d9fbed5d0e9c2c633ad3cb30d22de9f2 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeTrap.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestTypeTrap.java @@ -18,9 +18,9 @@ package no.nibio.vips.logic.entity; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.Table; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import java.io.Serializable; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestWeatherStation.java b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestWeatherStation.java index e4d820273d132e0056e31a0c9276d31726c2baf5..9be891c706733200239a3100a417bd5f71cbb5ba 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PointOfInterestWeatherStation.java +++ b/src/main/java/no/nibio/vips/logic/entity/PointOfInterestWeatherStation.java @@ -19,19 +19,19 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.DiscriminatorValue; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToOne; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.DiscriminatorValue; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import com.fasterxml.jackson.annotation.JsonIgnore; -import javax.persistence.Transient; +import jakarta.persistence.Transient; /** * Extension of {@see PointOfInterest}, with additional info for weather stations @@ -46,12 +46,12 @@ import javax.persistence.Transient; @NamedQuery(name = "PointOfInterestWeatherStation.findAll", query = "SELECT p FROM PointOfInterestWeatherStation p"), @NamedQuery(name = "PointOfInterestWeatherStation.findAllByActivity", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.active = :active"), @NamedQuery(name = "PointOfInterestWeatherStation.findByPointOfInterestId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.pointOfInterestId = :pointOfInterestId"), - @NamedQuery(name = "PointOfInterestWeatherStation.findByOrganizationId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.user IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId=:organizationId)"), - @NamedQuery(name = "PointOfInterestWeatherStation.findByActivityAndOrganizationId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.active = :active AND p.user IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId=:organizationId)"), + @NamedQuery(name = "PointOfInterestWeatherStation.findByOrganizationId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.user.userId IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId.organizationId = :organizationId)"), + @NamedQuery(name = "PointOfInterestWeatherStation.findByActivityAndOrganizationId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.active = :active AND p.user.userId IN(SELECT u.userId FROM VipsLogicUser u WHERE u.organizationId = :organizationId)"), @NamedQuery(name = "PointOfInterestWeatherStation.findByUserId", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.user = :userId"), @NamedQuery(name = "PointOfInterestWeatherStation.findByNames", query = "SELECT p FROM PointOfInterestWeatherStation p WHERE p.name IN :names") }) -public class PointOfInterestWeatherStation extends PointOfInterest implements Serializable { +public class PointOfInterestWeatherStation extends PointOfInterest { @Size(max = 255) private String weatherStationRemoteId; private WeatherStationDataSource weatherStationDataSourceId; diff --git a/src/main/java/no/nibio/vips/logic/entity/PolygonService.java b/src/main/java/no/nibio/vips/logic/entity/PolygonService.java index 9097f946729c6df274f1d212775c3e6d750e35d5..1c5e06694a384708a67b57786d19002b5a10743a 100644 --- a/src/main/java/no/nibio/vips/logic/entity/PolygonService.java +++ b/src/main/java/no/nibio/vips/logic/entity/PolygonService.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/Preparation.java b/src/main/java/no/nibio/vips/logic/entity/Preparation.java index 428b7c3bd27c73abb196f7c6fa8a015681a1f429..92beeb811c2c8d15a027ac3a24266e0f1a481b90 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Preparation.java +++ b/src/main/java/no/nibio/vips/logic/entity/Preparation.java @@ -20,18 +20,18 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.math.BigInteger; -import javax.persistence.Basic; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/PreparationType.java b/src/main/java/no/nibio/vips/logic/entity/PreparationType.java index 48ca4c65f1c0841cd1c01b006e119de9291750f3..393444e8482303f3f450cec11c1d5cdb388db4f2 100755 --- a/src/main/java/no/nibio/vips/logic/entity/PreparationType.java +++ b/src/main/java/no/nibio/vips/logic/entity/PreparationType.java @@ -21,16 +21,16 @@ package no.nibio.vips.logic.entity; import com.fasterxml.jackson.annotation.JsonIgnore; import java.io.Serializable; import java.util.Collection; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; diff --git a/src/main/java/no/nibio/vips/logic/entity/TaskHistory.java b/src/main/java/no/nibio/vips/logic/entity/TaskHistory.java index 1fcc220c51e323d12cb37a1953dceb951c8811a0..853526d63ef15bde78e9c51198ffc3a51842b64f 100755 --- a/src/main/java/no/nibio/vips/logic/entity/TaskHistory.java +++ b/src/main/java/no/nibio/vips/logic/entity/TaskHistory.java @@ -20,20 +20,20 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Basic; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/TaskHistoryStatus.java b/src/main/java/no/nibio/vips/logic/entity/TaskHistoryStatus.java index 2a81d1de8cfdf2dd396654506501c39e0c7b09b9..7d9731e69002c559240f3fbcc6dfbc100ef9e8ab 100755 --- a/src/main/java/no/nibio/vips/logic/entity/TaskHistoryStatus.java +++ b/src/main/java/no/nibio/vips/logic/entity/TaskHistoryStatus.java @@ -20,16 +20,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/UserAuthentication.java b/src/main/java/no/nibio/vips/logic/entity/UserAuthentication.java index 11632649f3c16e096da3adcabcb037927a761237..4de3cf78c90465bcfde12189aeb5d2a979ec6e6e 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserAuthentication.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserAuthentication.java @@ -20,17 +20,17 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationPK.java b/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationPK.java index dd4fbbf51ba041a89371bed534bbf42f2e46939d..bffab63e2cf5bfdf49541818b6a83f5ff6f92222 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationType.java b/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationType.java index e1a66461c4ecc39d963b3e699e0e3ac942f5ce1b..2b3c981aaca5942c475e3015e01d0bf8770ae1ae 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationType.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserAuthenticationType.java @@ -20,17 +20,17 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.CascadeType; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterest.java b/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterest.java index 0b8a59966b3abc96fff894676a8a739cfcb91129..9e5acd71285e4a85153571de2d2b0fc56b4ee749 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterest.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterest.java @@ -19,13 +19,13 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterestPK.java b/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterestPK.java index 6f34d94d713179943dd8cce3ea6f4a0ec01d5310..ffdc59ff1c242845b3639dc2ff3c77c4c084eeb6 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterestPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserPointOfInterestPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/entity/UserUuid.java b/src/main/java/no/nibio/vips/logic/entity/UserUuid.java index 539f0c28d4bbd22b78a1f0cae191683fca2942d6..20725773ef46e22348bc1f18ad17f2b621e35413 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserUuid.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserUuid.java @@ -21,14 +21,14 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Date; import java.util.UUID; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/UserUuidPK.java b/src/main/java/no/nibio/vips/logic/entity/UserUuidPK.java index 9168cdfb5975ed16ce379896cea825c02d4f9430..0b08ba1cba7185a7148f965a515d1b51144f6df2 100755 --- a/src/main/java/no/nibio/vips/logic/entity/UserUuidPK.java +++ b/src/main/java/no/nibio/vips/logic/entity/UserUuidPK.java @@ -20,10 +20,12 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.UUID; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import org.hibernate.annotations.JdbcTypeCode; +import org.hibernate.type.SqlTypes; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2015 <a href="http://www.nibio.no/">NIBIO</a> @@ -34,7 +36,7 @@ public class UserUuidPK implements Serializable { @Basic(optional = false) @NotNull @Column(name = "user_uuid") - @org.hibernate.annotations.Type(type="pg-uuid") // Ugly implementation specific hack + @JdbcTypeCode(SqlTypes.UUID) private UUID userUuid; @Basic(optional = false) @NotNull diff --git a/src/main/java/no/nibio/vips/logic/entity/VipsCoreInstance.java b/src/main/java/no/nibio/vips/logic/entity/VipsCoreInstance.java index 81808efcf0cb1e761d57ea3892a8bff631766be4..d7ecef921fbb088c1b11e30b6bac269b3134faec 100755 --- a/src/main/java/no/nibio/vips/logic/entity/VipsCoreInstance.java +++ b/src/main/java/no/nibio/vips/logic/entity/VipsCoreInstance.java @@ -19,8 +19,8 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.*; -import javax.validation.constraints.Size; +import jakarta.persistence.*; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/VipsLogicRole.java b/src/main/java/no/nibio/vips/logic/entity/VipsLogicRole.java index 0bafed3d02c8c2758d9a24c48583d37bdb4b29a9..8aa56169278ea9dfd70da27c319a36c5dcce97f0 100755 --- a/src/main/java/no/nibio/vips/logic/entity/VipsLogicRole.java +++ b/src/main/java/no/nibio/vips/logic/entity/VipsLogicRole.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/VipsLogicUser.java b/src/main/java/no/nibio/vips/logic/entity/VipsLogicUser.java index 27102b4dd8893a1bc2857c365a4cec3b6a7f6446..6e7c51bea32add98029d8f665cb222f5b7353027 100755 --- a/src/main/java/no/nibio/vips/logic/entity/VipsLogicUser.java +++ b/src/main/java/no/nibio/vips/logic/entity/VipsLogicUser.java @@ -19,25 +19,25 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.JoinTable; +import jakarta.persistence.ManyToMany; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Pattern; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -54,7 +54,7 @@ import java.util.UUID; @NamedQuery(name = "VipsLogicUser.findAll", query = "SELECT v FROM VipsLogicUser v"), @NamedQuery(name = "VipsLogicUser.findByUserId", query = "SELECT v FROM VipsLogicUser v WHERE v.userId = :userId"), @NamedQuery(name = "VipsLogicUser.findByUserIds", query = "SELECT v FROM VipsLogicUser v WHERE v.userId IN :userIds"), - @NamedQuery(name = "VipsLogicUser.findByOrganizationId", query = "SELECT v FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)"), + @NamedQuery(name = "VipsLogicUser.findByOrganizationId", query = "SELECT v FROM VipsLogicUser v WHERE v.organizationId = :organizationId OR v.organizationId.organizationId IN(SELECT o.organizationId FROM Organization o WHERE o.parentOrganizationId = :organizationId)"), @NamedQuery(name = "VipsLogicUser.findByOrganizationIds", query = "SELECT v FROM VipsLogicUser v WHERE v.organizationId.organizationId IN (:organizationIds)"), @NamedQuery(name = "VipsLogicUser.findByEmail", query = "SELECT v FROM VipsLogicUser v WHERE v.email = :email"), @NamedQuery(name = "VipsLogicUser.findByEmailVerificationCode", query = "SELECT v FROM VipsLogicUser v WHERE v.emailVerificationCode = :emailVerificationCode"), diff --git a/src/main/java/no/nibio/vips/logic/entity/WeatherForecastProvider.java b/src/main/java/no/nibio/vips/logic/entity/WeatherForecastProvider.java index f2f1ae2479a94ee6ecb5059a2ef635913b518f05..56788fa28f346e7a582741299cc7207a6bff42d4 100755 --- a/src/main/java/no/nibio/vips/logic/entity/WeatherForecastProvider.java +++ b/src/main/java/no/nibio/vips/logic/entity/WeatherForecastProvider.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/WeatherStationDataSource.java b/src/main/java/no/nibio/vips/logic/entity/WeatherStationDataSource.java index b31bd3aad0c4a63cf73652253fc942660688f974..54c5720f89a9dc796aef5faa0e92de41218dbf17 100755 --- a/src/main/java/no/nibio/vips/logic/entity/WeatherStationDataSource.java +++ b/src/main/java/no/nibio/vips/logic/entity/WeatherStationDataSource.java @@ -19,16 +19,16 @@ package no.nibio.vips.logic.entity; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java b/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java new file mode 100644 index 0000000000000000000000000000000000000000..1c94212d6aae477392ccdbb8554c866c01eea8ad --- /dev/null +++ b/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java @@ -0,0 +1,32 @@ +package no.nibio.vips.logic.entity.helpers; + +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.ext.Provider; +import jakarta.ws.rs.ext.MessageBodyWriter; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.MultivaluedMap; +import java.lang.annotation.Annotation; +import java.lang.reflect.Type; +import java.io.OutputStream; +import java.io.IOException; +import de.micromata.opengis.kml.v_2_2_0.Kml; + +@Provider +@Produces("application/vnd.google-earth.kml+xml") +public class KmlMessageBodyWriter implements MessageBodyWriter<Kml> { + + @Override + public boolean isWriteable(Class<?> type, Type genericType, + Annotation[] annotations, MediaType mediaType) { + return Kml.class.isAssignableFrom(type); + } + + @Override + public void writeTo(Kml kml, Class<?> type, Type genericType, Annotation[] annotations, + MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, + OutputStream entityStream) throws IOException { + kml.marshal(entityStream); + } + + // Implement other MessageBodyWriter methods as needed +} diff --git a/src/main/java/no/nibio/vips/logic/gis/GeometryEntity.java b/src/main/java/no/nibio/vips/logic/gis/GeometryEntity.java index a996188d93a37656b34c4a745ba33f626a01fde3..4ebbca82007875f308332efc0630e16222f69bf1 100755 --- a/src/main/java/no/nibio/vips/logic/gis/GeometryEntity.java +++ b/src/main/java/no/nibio/vips/logic/gis/GeometryEntity.java @@ -20,11 +20,11 @@ package no.nibio.vips.logic.gis; import org.locationtech.jts.geom.Geometry; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; import org.hibernate.annotations.Type; /** diff --git a/src/main/java/no/nibio/vips/logic/i18n/CharacterEncodingFilter.java b/src/main/java/no/nibio/vips/logic/i18n/CharacterEncodingFilter.java index ff1f0cc71914368d648141e6e038dd62c4b32c63..0d11b22209384e7f959494a994e69fc10f18f8a1 100755 --- a/src/main/java/no/nibio/vips/logic/i18n/CharacterEncodingFilter.java +++ b/src/main/java/no/nibio/vips/logic/i18n/CharacterEncodingFilter.java @@ -19,12 +19,12 @@ package no.nibio.vips.logic.i18n; 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 jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * <p> diff --git a/src/main/java/no/nibio/vips/logic/i18n/LocalizationFilter.java b/src/main/java/no/nibio/vips/logic/i18n/LocalizationFilter.java index b5b2ca78d5c9775474a05fa2f0c3432fea48dcf6..db56f94230ee1657b86ef11187091b2d756eded2 100755 --- a/src/main/java/no/nibio/vips/logic/i18n/LocalizationFilter.java +++ b/src/main/java/no/nibio/vips/logic/i18n/LocalizationFilter.java @@ -25,13 +25,13 @@ import java.util.List; import java.util.Locale; import java.util.Map; -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 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 no.nibio.vips.i18n.LanguageUtil; /** diff --git a/src/main/java/no/nibio/vips/logic/i18n/ResourceBundleJSServlet.java b/src/main/java/no/nibio/vips/logic/i18n/ResourceBundleJSServlet.java index 25108073db07c68a317ec8918765619c7430eb1e..2db6aec757ad4fc1448e35627b163a9372581317 100755 --- a/src/main/java/no/nibio/vips/logic/i18n/ResourceBundleJSServlet.java +++ b/src/main/java/no/nibio/vips/logic/i18n/ResourceBundleJSServlet.java @@ -21,10 +21,10 @@ package no.nibio.vips.logic.i18n; import java.io.IOException; import java.io.PrintWriter; import java.util.ResourceBundle; -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.apache.commons.lang.StringEscapeUtils; /** diff --git a/src/main/java/no/nibio/vips/logic/i18n/SessionLocaleUtil.java b/src/main/java/no/nibio/vips/logic/i18n/SessionLocaleUtil.java index 9b7ea1ef44bb669058dafc7956ff7bafaa066207..2b15ec0bb74ec91b795c988c11e50ed4527bee54 100755 --- a/src/main/java/no/nibio/vips/logic/i18n/SessionLocaleUtil.java +++ b/src/main/java/no/nibio/vips/logic/i18n/SessionLocaleUtil.java @@ -20,7 +20,7 @@ package no.nibio.vips.logic.i18n; import com.ibm.icu.util.ULocale; import java.util.ResourceBundle; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; /** * Presents a uniform way of getting locale information diff --git a/src/main/java/no/nibio/vips/logic/messaging/ForecastEvent.java b/src/main/java/no/nibio/vips/logic/messaging/ForecastEvent.java index 35b6c5326732431b657812da9f39eb3995f77174..d4400138af1918a022a997eba962fc19ab4247e0 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/ForecastEvent.java +++ b/src/main/java/no/nibio/vips/logic/messaging/ForecastEvent.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/messaging/ForecastEventNotificationSubscription.java b/src/main/java/no/nibio/vips/logic/messaging/ForecastEventNotificationSubscription.java index 157953ea0393c5cc3bdd972b7433c9e5ba5f1d21..7849d587f49ad94be84436ff16759302c55e08fc 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/ForecastEventNotificationSubscription.java +++ b/src/main/java/no/nibio/vips/logic/messaging/ForecastEventNotificationSubscription.java @@ -19,15 +19,13 @@ package no.nibio.vips.logic.messaging; import java.util.List; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import no.nibio.vips.logic.util.IntegerArrayUserType; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -35,7 +33,6 @@ import org.hibernate.annotations.TypeDefs; */ @Entity @Table(name = "forecast_event_notification_subscription", schema = "messaging") -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) public class ForecastEventNotificationSubscription { @Id @@ -46,13 +43,13 @@ public class ForecastEventNotificationSubscription { @Column(name = "universal_message_format_id") private Integer universalMessageFormatId; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "weather_station_ids") - private Integer[] weatherStationIds; + private List<Integer> weatherStationIds; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "crop_category_ids") - private Integer[] cropCategoryIds; + private List<Integer> cropCategoryIds; /** * @return the userId @@ -85,42 +82,29 @@ public class ForecastEventNotificationSubscription { /** * @return the weatherStationIds */ - public Integer[] getWeatherStationIds() { + public List<Integer> getWeatherStationIds() { return weatherStationIds; } /** * @param weatherStationIds the weatherStationIds to set */ - public void setWeatherStationIds(Integer[] weatherStationIds) { + public void setWeatherStationIds(List<Integer> weatherStationIds) { this.weatherStationIds = weatherStationIds; } - /** - * Convenience method - * @param weatherStationIds - */ - public void setWeatherStationIds(List<Integer> weatherStationIds) - { - this.weatherStationIds = weatherStationIds.toArray(new Integer[weatherStationIds.size()]); - } /** * @return the cropCategoryIds */ - public Integer[] getCropCategoryIds() { + public List<Integer> getCropCategoryIds() { return cropCategoryIds; } /** * @param cropCategoryIds the cropCategoryIds to set */ - public void setCropCategoryIds(Integer[] cropCategoryIds) { + public void setCropCategoryIds(List<Integer> cropCategoryIds) { this.cropCategoryIds = cropCategoryIds; } - - public void setCropCategoryIds(List<Integer> cropCategoryIds) - { - this.cropCategoryIds = cropCategoryIds.toArray(new Integer[cropCategoryIds.size()]); - } } diff --git a/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLog.java b/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLog.java index dac54b75e5cda6e610bb34cd346c8327e31db433..63617d2780dac5246f85a7a6f3b4eed50bfa2f9d 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLog.java +++ b/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLog.java @@ -20,14 +20,14 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLogPK.java b/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLogPK.java index 083328eeb867d2344a86f3d5029633036ef53565..435c12e8de616eb8f53757918e7c70d1f5742ff0 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLogPK.java +++ b/src/main/java/no/nibio/vips/logic/messaging/ForecastNotificationLogPK.java @@ -20,12 +20,12 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; import java.util.Date; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.NotNull; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/messaging/MessageNotificationSubscription.java b/src/main/java/no/nibio/vips/logic/messaging/MessageNotificationSubscription.java index 2231f3b146004522386b65ef5450cef57efc925e..ea0adc8c8a22b51628d0e088a2c5753428dace3b 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/MessageNotificationSubscription.java +++ b/src/main/java/no/nibio/vips/logic/messaging/MessageNotificationSubscription.java @@ -20,15 +20,13 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; import java.util.List; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import no.nibio.vips.logic.util.IntegerArrayUserType; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -36,7 +34,6 @@ import org.hibernate.annotations.TypeDefs; */ @Entity @Table(name = "message_notification_subscription", schema = "messaging") -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) public class MessageNotificationSubscription implements Serializable { @Id @@ -47,13 +44,13 @@ public class MessageNotificationSubscription implements Serializable { @Column(name = "universal_message_format_id") private Integer universalMessageFormatId; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "message_tag_ids") - private Integer[] messageTagIds; + private List<Integer> messageTagIds; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "crop_category_ids") - private Integer[] cropCategoryIds; + private List<Integer> cropCategoryIds; public Integer getUserId() { return this.userId; @@ -105,43 +102,29 @@ public class MessageNotificationSubscription implements Serializable { /** * @return the messageTagIds */ - public Integer[] getMessageTagIds() { + public List<Integer> getMessageTagIds() { return messageTagIds; } /** * @param messageTagIds the messageTagIds to set */ - public void setMessageTagIds(Integer[] messageTagIds) { + public void setMessageTagIds(List<Integer> messageTagIds) { this.messageTagIds = messageTagIds; } - /** - * For your convenience - * @param messageTagIds - */ - public void setMessageTagIds(List<Integer> messageTagIds) - { - this.messageTagIds = messageTagIds.toArray(new Integer[messageTagIds.size()]); - } - /** * @return the cropCategoryIds */ - public Integer[] getCropCategoryIds() { + public List<Integer> getCropCategoryIds() { return cropCategoryIds; } /** * @param cropCategoryIds the cropCategoryIds to set */ - public void setCropCategoryIds(Integer[] cropCategoryIds) { + public void setCropCategoryIds(List<Integer> cropCategoryIds) { this.cropCategoryIds = cropCategoryIds; } - - public void setCropCategoryIds(List<Integer> cropCategoryIds) - { - this.cropCategoryIds = cropCategoryIds.toArray(new Integer[cropCategoryIds.size()]); - } } diff --git a/src/main/java/no/nibio/vips/logic/messaging/MessageRecipient.java b/src/main/java/no/nibio/vips/logic/messaging/MessageRecipient.java index ee231e54cbd9f7cbe4a0ca457293d20d8736b0a7..c6a692d1ec34af6df9390bc56ce79f020f6565cd 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/MessageRecipient.java +++ b/src/main/java/no/nibio/vips/logic/messaging/MessageRecipient.java @@ -19,9 +19,9 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/messaging/MessagingBean.java b/src/main/java/no/nibio/vips/logic/messaging/MessagingBean.java index f05822accb6bee84c91d393471fc3c94f45df484..6b9a9b968721366c52f45ca146e7630b43f6d80a 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/MessagingBean.java +++ b/src/main/java/no/nibio/vips/logic/messaging/MessagingBean.java @@ -29,11 +29,11 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.ResourceBundle; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; import no.nibio.vips.entity.Result; import no.nibio.vips.logic.entity.ForecastConfiguration; import no.nibio.vips.logic.entity.ForecastResult; @@ -165,7 +165,7 @@ public class MessagingBean { " SELECT mns.user_id FROM messaging.message_notification_subscription mns, public.vips_logic_user u \n" + " WHERE mns.user_id = u.user_id \n" + " and u.organization_id = " + message.getOrganizationId() + - (message.getCropCategoryIds() != null && message.getCropCategoryIds().length != 0 ? " AND mns.crop_category_ids && ARRAY" + Arrays.asList(message.getCropCategoryIds()).toString() + " \n" : "") + + (message.getCropCategoryIds() != null && message.getCropCategoryIds().size() != 0 ? " AND mns.crop_category_ids && ARRAY" + Arrays.asList(message.getCropCategoryIds()).toString() + " \n" : "") + (message.getMessageTagIds() != null && !message.getMessageTagIds().isEmpty() ? " AND mns.message_tag_ids && ARRAY" + message.getMessageTagIds().toString() + " \n" : "" )+ // && is the array_overlaps operator " AND (mns.universal_message_format_id <> " + UniversalMessageFormat.FORMAT_SMS + " OR (mns.universal_message_format_id = " + UniversalMessageFormat.FORMAT_SMS + " AND u.approves_sms_billing IS TRUE))" + "); \n"; diff --git a/src/main/java/no/nibio/vips/logic/messaging/ObservationNotificationSubscription.java b/src/main/java/no/nibio/vips/logic/messaging/ObservationNotificationSubscription.java index 7df24d956a44b400a0cacbd53660cef00e7cd2fc..08c6139a10621c7a585b62df7489ed2a2eeaee8e 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/ObservationNotificationSubscription.java +++ b/src/main/java/no/nibio/vips/logic/messaging/ObservationNotificationSubscription.java @@ -20,15 +20,14 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; import java.util.List; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; -import no.nibio.vips.logic.util.IntegerArrayUserType; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import io.hypersistence.utils.hibernate.type.array.ListArrayType; + /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -36,7 +35,6 @@ import org.hibernate.annotations.TypeDefs; */ @Entity @Table(name = "observation_notification_subscription", schema = "messaging") -@TypeDefs( {@TypeDef( name= "IntegerArray", typeClass = IntegerArrayUserType.class)}) public class ObservationNotificationSubscription implements Serializable { @Id @@ -47,9 +45,9 @@ public class ObservationNotificationSubscription implements Serializable { @Column(name = "universal_message_format_id") private Integer universalMessageFormatId; - @Type(type = "IntegerArray") + @Type(ListArrayType.class) @Column(name = "crop_category_ids") - private Integer[] cropCategoryIds; + private List<Integer> cropCategoryIds; public Integer getUserId() { return this.userId; @@ -101,20 +99,17 @@ public class ObservationNotificationSubscription implements Serializable { /** * @return the cropCategoryIds */ - public Integer[] getCropCategoryIds() { + public List<Integer> getCropCategoryIds() { return cropCategoryIds; } /** * @param cropCategoryIds the cropCategoryIds to set */ - public void setCropCategoryIds(Integer[] cropCategoryIds) { - this.cropCategoryIds = cropCategoryIds; - } public void setCropCategoryIds(List<Integer> cropCategoryIds) { - this.cropCategoryIds = cropCategoryIds.toArray(new Integer[cropCategoryIds.size()]); + this.cropCategoryIds = cropCategoryIds; } } diff --git a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessage.java b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessage.java index db8020bf17a7cccac787569541a1592fd6d04065..504306acfc13d56a9cdf7893b59122329899054a 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessage.java +++ b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessage.java @@ -31,25 +31,25 @@ import java.util.List; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; import javax.xml.bind.annotation.XmlRootElement; import com.ibm.icu.util.ULocale; import no.nibio.vips.logic.util.StringJsonUserType; +import org.hibernate.annotations.JdbcTypeCode; import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import org.hibernate.type.SqlTypes; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -58,7 +58,6 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "universal_message", schema = "messaging") @XmlRootElement -@TypeDefs( {@TypeDef( name= "StringJsonObject", typeClass = StringJsonUserType.class)}) @NamedQueries({ @NamedQuery(name = "UniversalMessage.findAll", query = "SELECT u FROM UniversalMessage u"), @NamedQuery(name = "UniversalMessage.findByUniversalMessageId", query = "SELECT u FROM UniversalMessage u WHERE u.universalMessageId = :universalMessageId"), @@ -73,14 +72,12 @@ public class UniversalMessage implements Serializable { @Column(name = "expires_at") @Temporal(TemporalType.TIMESTAMP) private Date expiresAt; - //@Column(name = "distribution_list", columnDefinition = "json") - //@Convert(converter = PostgresJSONStringConverter.class) - // Documentation on StackOverflow: http://stackoverflow.com/questions/15974474/mapping-postgresql-json-column-to-hibernate-value-type - @Type(type = "StringJsonObject") + + @JdbcTypeCode(SqlTypes.JSON) @Column(name = "distribution_list") private String distributionList; - @Type(type = "StringJsonObject") + @JdbcTypeCode(SqlTypes.JSON) @Column(name = "message_local_versions") private String messageLocalVersions; diff --git a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessageFormat.java b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessageFormat.java index 5a257076d6585b4da369f440378072ff6c3e252a..d87384d48ba5eefa225ee16ed6ecf78586a7fbfb 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessageFormat.java +++ b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessageFormat.java @@ -19,12 +19,12 @@ package no.nibio.vips.logic.messaging; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessagingServiceClient.java b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessagingServiceClient.java index f0583c3e77c793e8059a7730d62cf1f147a5d89e..3ca28aa6389793cb7919a4145b86a7407cfb38c3 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/UniversalMessagingServiceClient.java +++ b/src/main/java/no/nibio/vips/logic/messaging/UniversalMessagingServiceClient.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.messaging; import com.webcohesion.enunciate.metadata.Facet; -import javax.ws.rs.Consumes; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.Response; /** * @copyright 2015 <a href="http://www.bioforsk.no/">Bioforsk</a> diff --git a/src/main/java/no/nibio/vips/logic/messaging/distribution/send/MailMsgDeliveryHandler.java b/src/main/java/no/nibio/vips/logic/messaging/distribution/send/MailMsgDeliveryHandler.java index 310eb316dcd72a4fc83bd5003be901a75d6846b0..7c8efb8d445c3fc2b06740d92ab7d8da7cbab448 100644 --- a/src/main/java/no/nibio/vips/logic/messaging/distribution/send/MailMsgDeliveryHandler.java +++ b/src/main/java/no/nibio/vips/logic/messaging/distribution/send/MailMsgDeliveryHandler.java @@ -22,14 +22,14 @@ import java.text.MessageFormat; import java.util.Date; import java.util.Properties; -import javax.mail.Message; -import javax.mail.MessagingException; -import javax.mail.Session; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeMessage; -import javax.mail.internet.MimeUtility; - -import com.sun.mail.smtp.SMTPTransport; +import jakarta.mail.Message; +import jakarta.mail.MessagingException; +import jakarta.mail.Session; +import jakarta.mail.internet.InternetAddress; +import jakarta.mail.internet.MimeMessage; +import jakarta.mail.internet.MimeUtility; + +import jakarta.mail.Transport; import no.nibio.vips.logic.messaging.distribution.entity.DistributionTypeEnum; import no.nibio.vips.logic.messaging.distribution.entity.MsgReceiver; import no.nibio.vips.logic.messaging.distribution.entity.MsgToSend; @@ -65,7 +65,7 @@ public class MailMsgDeliveryHandler implements IDeliveryMsgHandler { throws MessagingException, UnsupportedEncodingException { boolean result = false; - SMTPTransport t = null; + Transport t = null; String message = "Failed to send message to " + mailaddress + " using server " + mailserver; try { @@ -115,11 +115,12 @@ public class MailMsgDeliveryHandler implements IDeliveryMsgHandler { LOGGER.debug("Message ready to send : " + mailMessageBody); - t = (SMTPTransport) session.getTransport(ssl ? "smtps" : "smtp"); + t = (Transport) session.getTransport(ssl ? "smtps" : "smtp"); t.connect(); t.sendMessage(msg, msg.getAllRecipients()); - - LOGGER.debug("Mail was sent successfully. Response: " + t.getLastServerResponse()); + + // TODO: Replace with TransportListener (After upgrading to Jakarta) + //LOGGER.debug("Mail was sent successfully. Response: " + t.getLastServerResponse()); } finally { try { diff --git a/src/main/java/no/nibio/vips/logic/messaging/distribution/send/SmsMsgDeliveryHandler.java b/src/main/java/no/nibio/vips/logic/messaging/distribution/send/SmsMsgDeliveryHandler.java index 860f4514396f9c74cb7c74f6b2cb919f1373c9de..b92c123669ef5580c20a3bdd5aea911d56d65d42 100644 --- a/src/main/java/no/nibio/vips/logic/messaging/distribution/send/SmsMsgDeliveryHandler.java +++ b/src/main/java/no/nibio/vips/logic/messaging/distribution/send/SmsMsgDeliveryHandler.java @@ -27,7 +27,7 @@ import java.net.URLConnection; import java.net.URLEncoder; import java.text.MessageFormat; -import javax.mail.MessagingException; +import jakarta.mail.MessagingException; import no.nibio.vips.logic.messaging.distribution.entity.MsgReceiver; import no.nibio.vips.logic.messaging.distribution.entity.MsgToSend; import no.nibio.vips.logic.messaging.distribution.entity.VipsMessage; diff --git a/src/main/java/no/nibio/vips/logic/messaging/sms/SMSHandlingService.java b/src/main/java/no/nibio/vips/logic/messaging/sms/SMSHandlingService.java index 76ffc2829aa07745318b03359a70aefba92b8469..b07721ff2b2a9f433bb53c46478ddb3b69e729b2 100755 --- a/src/main/java/no/nibio/vips/logic/messaging/sms/SMSHandlingService.java +++ b/src/main/java/no/nibio/vips/logic/messaging/sms/SMSHandlingService.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.messaging.sms; import com.webcohesion.enunciate.metadata.Facet; -import javax.ejb.EJB; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; +import jakarta.ejb.EJB; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.VipsLogicUser; diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothBean.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothBean.java index 278d8742ce56451b82b349feea1485a85203ade3..e002bd0c67a816e6be95f56573789a15d59d863a 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothBean.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothBean.java @@ -32,12 +32,12 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; -import javax.ejb.LocalBean; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; import no.nibio.vips.logic.util.Globals; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothController.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothController.java index f21aeb2f9530ea09bb4bf3be00aef4311ef2b367..5916fcaa3d9d4261288254cc7cbf50d268a83ad9 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothController.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothController.java @@ -28,11 +28,11 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.VipsLogicRole; import no.nibio.vips.logic.entity.VipsLogicUser; diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothService.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothService.java index fe21310ed23644c2d561149e4450d7117efe13ef..8c5013e8e9093e5f78c55e787bfd552bc1bb14c1 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothService.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/AppleFruitMothService.java @@ -21,15 +21,15 @@ package no.nibio.vips.logic.modules.applefruitmoth; import com.webcohesion.enunciate.metadata.Facet; import de.micromata.opengis.kml.v_2_2_0.Kml; import java.util.Calendar; -import javax.ejb.EJB; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.Response; import no.nibio.vips.logic.util.SystemTime; import no.nibio.vips.util.ServletUtil; diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSite.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSite.java index 0a380253126db6273c36952bf27ee33953980190..93c21bb6fc285297dae25ddb38f59a6bda75dd6b 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSite.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSite.java @@ -23,22 +23,22 @@ import java.io.Serializable; import java.util.Date; import java.util.HashSet; import java.util.Set; -import javax.persistence.Basic; -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.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.OneToOne; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import no.nibio.vips.logic.entity.Gis; diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePoint.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePoint.java index 64ad9e597b7f0da19dae1d1c42c1fc38362187ef..82c177d4a93b666309262095b2b7f48a47f316d9 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePoint.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePoint.java @@ -20,23 +20,23 @@ package no.nibio.vips.logic.modules.applefruitmoth; import java.io.Serializable; import java.util.Set; -import javax.persistence.Basic; -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.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.OneToOne; -import javax.persistence.Table; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import no.nibio.vips.logic.entity.Gis; diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonData.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonData.java index 2e35f610324643c6ed68d17f3207b01b41d40035..c54d2aa69fe239e42e3301c87c9361ccf850e3e3 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonData.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonData.java @@ -21,16 +21,16 @@ package no.nibio.vips.logic.modules.applefruitmoth; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonDataPK.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonDataPK.java index 1f85c533303a8f5b19df7aa7d088db5a22844851..b62e6d09abfe8d6e64e01f52973ccc04b6979434 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonDataPK.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSitePointSeasonDataPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.modules.applefruitmoth; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonData.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonData.java index 6635b19435d12757179e5460bda4426fb3ab8c74..33df50749be5a86326760aaba1596796dbfbc75b 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonData.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonData.java @@ -21,16 +21,16 @@ package no.nibio.vips.logic.modules.applefruitmoth; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonDataPK.java b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonDataPK.java index 42f89a65a522bcd48415c8330f6ce2b83bf26c39..fc3d3bb138a5561563c8f4f201cfb7155c61f089 100755 --- a/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonDataPK.java +++ b/src/main/java/no/nibio/vips/logic/modules/applefruitmoth/ObservationSiteSeasonCommonDataPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.modules.applefruitmoth; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleBean.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleBean.java index a6e3a4afa3e0e38a5c62e771e4b48d7b16c7838d..290cfa5e1a1ad5643f94d26e73147c137e6af52a 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleBean.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleBean.java @@ -39,14 +39,14 @@ import java.util.Locale; import java.util.Map; import java.util.Set; import java.util.stream.Collectors; -import javax.ejb.EJB; +import jakarta.ejb.EJB; -import javax.ejb.LocalBean; -import javax.ejb.Stateless; +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; import javax.naming.InitialContext; import javax.naming.NamingException; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; import org.geotools.geometry.jts.JTS; import org.geotools.referencing.CRS; diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleController.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleController.java index 7e622af69015be444556ca0982e740e9f9ffa03d..0a2dcdbb90036b19ca1be6ce9e60167ede85bd52 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleController.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleController.java @@ -33,12 +33,12 @@ import java.util.List; import java.util.Locale; import java.util.Set; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.ws.rs.core.Response; import no.nibio.vips.gis.GISUtil; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.VipsLogicRole; diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleService.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleService.java index ebcde20a98263955bfbc177cabf52ab1b5c6d585..76ddf51b3db21cab4afb58b0dd6509935a3c9afa 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleService.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/BarkbeetleService.java @@ -18,17 +18,17 @@ package no.nibio.vips.logic.modules.barkbeetle; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.GET; -import javax.ws.rs.PATCH; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PATCH; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.Response; import org.jboss.resteasy.annotations.GZIP; @@ -38,7 +38,7 @@ import com.webcohesion.enunciate.metadata.Facet; import java.text.SimpleDateFormat; import java.util.Date; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.util.SystemTime; import no.nibio.vips.util.ServletUtil; diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/RegistrationStatusType.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/RegistrationStatusType.java index dcf98f16832bc938a61f56aee3916a531548fc38..fe4e2e18fab3390f1186625ad98101fed1c4601e 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/RegistrationStatusType.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/RegistrationStatusType.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.modules.barkbeetle; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsite.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsite.java index b5e16c388d11344860541c0cbbe1c7ad5cf1c633..07899fda2af9ddd8327848e7a3c7a1c2053e5107 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsite.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsite.java @@ -30,27 +30,27 @@ import java.util.Collections; import java.util.Date; import java.util.List; import java.util.Locale; -import javax.persistence.Basic; -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.Lob; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.OneToOne; -import javax.persistence.PrimaryKeyJoinColumn; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +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.Lob; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; +import jakarta.persistence.PrimaryKeyJoinColumn; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import no.nibio.vips.logic.entity.VipsLogicUser; diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsiteBivolt.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsiteBivolt.java index bc1cf21432ab5b4a1f82cf51f20411ea332685f5..98cf87086fe6bb8407403672f0df70cc35cfa0f5 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsiteBivolt.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/SeasonTrapsiteBivolt.java @@ -21,19 +21,19 @@ package no.nibio.vips.logic.modules.barkbeetle; import java.io.Serializable; import java.math.BigInteger; import java.util.Date; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.MapsId; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToOne; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.MapsId; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistration.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistration.java index d1ec56d11c8196c737b87567df5377bf4fea7e40..19d15235437f0e8427d04fd363af0d7e5fdeddb4 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistration.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistration.java @@ -20,18 +20,18 @@ package no.nibio.vips.logic.modules.barkbeetle; import java.io.Serializable; import java.util.Date; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; -import javax.persistence.Transient; -import javax.validation.constraints.Size; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; +import jakarta.persistence.Transient; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistrationPK.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistrationPK.java index 398c49320392f69841d3dbb2db3ec577d8d5a099..6ca9b6a80dd0a78ed5d1730470d8cb5eb7e34f05 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistrationPK.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteRegistrationPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.logic.modules.barkbeetle; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2020 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteType.java b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteType.java index 0b6d8ba524e397d5bbf9bc17f883783113bce137..867706c39f8f87a27d61c73fa360e8c3e9d5c02f 100644 --- a/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteType.java +++ b/src/main/java/no/nibio/vips/logic/modules/barkbeetle/TrapsiteType.java @@ -19,15 +19,15 @@ package no.nibio.vips.logic.modules.barkbeetle; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java index 1d30bc9b07ed320f5bd8aa4d583d4859e002356c..0b36340b8b4cff43322937d9cf31570be42b30fa 100755 --- a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java +++ b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java @@ -21,16 +21,16 @@ package no.nibio.vips.logic.modules.barleynetblotch; import com.webcohesion.enunciate.metadata.Facet; import java.util.*; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Response; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.Result; import no.nibio.vips.entity.WeatherObservation; diff --git a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/Factors.java b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/Factors.java index 81cb89a36a26513586f5cd6d0fb0ff61fa85eac3..db0d82756f7f4d680721ed4717812c9b907252a5 100755 --- a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/Factors.java +++ b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/Factors.java @@ -21,14 +21,14 @@ package no.nibio.vips.logic.modules.barleynetblotch; import java.io.Serializable; import java.math.BigDecimal; import java.math.BigInteger; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/PreparationEffectFactor.java b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/PreparationEffectFactor.java index b79579abbb2ad41afdb5b627d936b4be5392b074..21bd0d61898ff23e96a5c7ebcc1fa87aaaa14aae 100755 --- a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/PreparationEffectFactor.java +++ b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/PreparationEffectFactor.java @@ -20,14 +20,14 @@ package no.nibio.vips.logic.modules.barleynetblotch; import java.io.Serializable; import java.math.BigDecimal; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlRootElement; /** diff --git a/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java b/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java index 5f08a872cda7ba7bd919cea6c25912d1111996fd..9c63267b3c37998c6e9233d1f3c025ed794d2f36 100755 --- a/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java +++ b/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java @@ -30,18 +30,18 @@ import java.util.List; import java.util.Map; import java.util.TimeZone; import java.util.stream.Collectors; -import javax.ejb.EJB; +import jakarta.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.persistence.Query; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; +import jakarta.persistence.Query; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.Result; import no.nibio.vips.entity.WeatherObservation; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/TerminateSchedulerListener.java b/src/main/java/no/nibio/vips/logic/scheduling/TerminateSchedulerListener.java index 911ee8e792835b71b7e8bdd5a9b53abc1b5f679e..0a317ef6cdd427ea268247066dec4d1769df4e80 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/TerminateSchedulerListener.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/TerminateSchedulerListener.java @@ -21,7 +21,7 @@ package no.nibio.vips.logic.scheduling; import it.sauronsoftware.cron4j.Scheduler; import it.sauronsoftware.cron4j.SchedulerListener; import it.sauronsoftware.cron4j.TaskExecutor; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.SchedulingBean; /** diff --git a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/AltenariaModelPreprocessor.java b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/AltenariaModelPreprocessor.java index 62f1a688cb0434309588ec348b2136962436371e..7b1db122c47c2f533b904110cfa0392ec6c84115 100644 --- a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/AltenariaModelPreprocessor.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/AltenariaModelPreprocessor.java @@ -31,7 +31,7 @@ import java.util.List; import java.util.TimeZone; import java.util.logging.Level; import java.util.logging.Logger; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.WeatherObservation; import no.nibio.vips.logic.controller.session.ForecastBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/DeliaRadicumFloralisModelPreprocessor.java b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/DeliaRadicumFloralisModelPreprocessor.java index 9d5fa878570f40d8294d212029f194f92ec197a9..6e3420a76e6f339f3b15022b7a0ad4ff78dc0294 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/DeliaRadicumFloralisModelPreprocessor.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/DeliaRadicumFloralisModelPreprocessor.java @@ -24,7 +24,7 @@ import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.TimeZone; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.logic.controller.session.ObservationBean; import no.nibio.vips.logic.controller.session.OrganismBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/PsilaRosaeObservationModelPreprocessor.java b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/PsilaRosaeObservationModelPreprocessor.java index 4e9f5b7964e52452e901ecc56c0decb26803efb6..c9767cdca7c9951aad6ee6848378137bf3db3a76 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/PsilaRosaeObservationModelPreprocessor.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/PsilaRosaeObservationModelPreprocessor.java @@ -22,7 +22,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.TimeZone; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.logic.controller.session.ObservationBean; import no.nibio.vips.logic.controller.session.OrganismBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaApiicolaModelPreprocessor.java b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaApiicolaModelPreprocessor.java index 1cb407f2d50881816e25bfac2cf4b7db28f9e27c..322042f085dadac1f0f8f7c4b357fcc82cf14f22 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaApiicolaModelPreprocessor.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaApiicolaModelPreprocessor.java @@ -25,7 +25,7 @@ import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.stream.Collectors; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.WeatherObservation; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaHumidityModelPreprocessor.java b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaHumidityModelPreprocessor.java index 4ac0300b3f3bb36f18cfcb9d2f75325fe3ad08fa..470373f4689ca43cb89fec657d9220126c1b1b99 100644 --- a/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaHumidityModelPreprocessor.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/model/preprocessor/SeptoriaHumidityModelPreprocessor.java @@ -25,7 +25,7 @@ import java.util.Collections; import java.util.Date; import java.util.List; import java.util.TimeZone; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.WeatherObservation; import no.nibio.vips.logic.controller.session.ForecastBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/DeleteAllExpiredUserUuidsTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/DeleteAllExpiredUserUuidsTask.java index 0ef2ce63136d40ef47196676d8eb8f67ba8ecac4..978b77a3540f69ea839a9d54cd706b83e4859ae9 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/DeleteAllExpiredUserUuidsTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/DeleteAllExpiredUserUuidsTask.java @@ -19,7 +19,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.controller.session.UserBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsForOrganizationTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsForOrganizationTask.java index 84a41cc203c8e4c57e6cfe900ab189f4776af133..6b1ec30148734c75e43b6b729e00c91b6f6d0567 100644 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsForOrganizationTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsForOrganizationTask.java @@ -22,7 +22,7 @@ import it.sauronsoftware.cron4j.TaskExecutionContext; import java.util.Collections; import java.util.List; import java.util.Map; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.i18n.I18nImpl; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.PointOfInterestBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsTask.java index 7f08a0391eb1dce9730b5d8935a9892f62606fbc..9bb8ae4aeac07594edbbfb760efccdb11a837ac6 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunAllForecastConfigurationsTask.java @@ -1,18 +1,16 @@ /* - * Copyright (c) 2014 NIBIO <http://www.nibio.no/>. + * Copyright (c) 2014 NIBIO <http://www.nibio.no/>. * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General + * Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any + * later version. * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. + * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more + * details. * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <https://www.gnu.org/licenses/>. + * You should have received a copy of the GNU Affero General Public License along with this program. If not, see + * <https://www.gnu.org/licenses/>. * */ @@ -23,16 +21,13 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import no.nibio.vips.i18n.I18nImpl; -import no.nibio.vips.logic.controller.session.ForecastBean; -import no.nibio.vips.logic.controller.session.PointOfInterestBean; import no.nibio.vips.logic.controller.session.SessionControllerGetter; -import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.ForecastConfiguration; import no.nibio.vips.logic.entity.ModelInformation; import no.nibio.vips.logic.entity.Organization; @@ -49,34 +44,32 @@ import no.nibio.web.forms.FormField; * @copyright 2013-2022 <a href="http://www.nibio.no/">NIBIO</a> * @author Tor-Einar Skog <tor-einar.skog@nibio.no> */ -public class RunAllForecastConfigurationsTask extends VipsLogicTask{ +public class RunAllForecastConfigurationsTask extends VipsLogicTask { private static Logger LOGGER = LoggerFactory.getLogger(RunAllForecastConfigurationsTask.class); - + private I18nImpl i18n; - //private boolean DEBUG=true; + + // private boolean DEBUG=true; @Override public void execute(TaskExecutionContext tec) throws RuntimeException { Integer weatherStationPointOfInterestId = null; - if(this.getConfiguration() != null && this.getConfiguration().get("weatherStationPointOfInterestId") != null) - { - weatherStationPointOfInterestId = Integer.valueOf(this.getConfiguration().get("weatherStationPointOfInterestId")[0]); + if (this.getConfiguration() != null && this.getConfiguration().get("weatherStationPointOfInterestId") != null) { + weatherStationPointOfInterestId = + Integer.valueOf(this.getConfiguration().get("weatherStationPointOfInterestId")[0]); } - + // Is organization configured? In that case, pick only one. Otherwhise, pick em all // The config could come from a form - if(this.getConfiguration() != null && this.getConfiguration().get("organizationId") != null) - { - this.setOrganization(SessionControllerGetter.getUserBean().getOrganization(Integer.valueOf(this.getConfiguration().get("organizationId")[0]))); + if (this.getConfiguration() != null && this.getConfiguration().get("organizationId") != null) { + this.setOrganization(SessionControllerGetter.getUserBean() + .getOrganization(Integer.valueOf(this.getConfiguration().get("organizationId")[0]))); } - + List<Organization> organizations = new ArrayList<>(); - if(this.getOrganization() != null) - { + if (this.getOrganization() != null) { organizations.add(this.getOrganization()); - } - else - { + } else { organizations = SessionControllerGetter.getUserBean().getOrganizations(); } tec.setCompleteness(0d); @@ -85,98 +78,99 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ StringBuilder errorMessage = new StringBuilder(); // Get all organizations, loop, get all current forecasts, loop, run models, store results boolean noForecastConfigurationsFound = true; - - Map<String, ModelInformation> modelInformationMap = SessionControllerGetter.getForecastBean().getIndexedBatchableModelInformation(); - - for(Organization organization : organizations) - { - List<ForecastConfiguration> currentForecastConfigurations = SessionControllerGetter.getForecastBean().getForecastConfigurationsValidAtTime(organization, SystemTime.getSystemTime()); - //System.out.println("Current forecasts for " + organization.getOrganizationName() + ":" + currentForecastConfigurations.size()); - if(currentForecastConfigurations != null && !currentForecastConfigurations.isEmpty()) - { + + Map<String, ModelInformation> modelInformationMap = + SessionControllerGetter.getForecastBean().getIndexedBatchableModelInformation(); + + for (Organization organization : organizations) { + List<ForecastConfiguration> currentForecastConfigurations = SessionControllerGetter.getForecastBean() + .getForecastConfigurationsValidAtTime(organization, SystemTime.getSystemTime()); + // System.out.println("Current forecasts for " + organization.getOrganizationName() + ":" + + // currentForecastConfigurations.size()); + if (currentForecastConfigurations != null && !currentForecastConfigurations.isEmpty()) { noForecastConfigurationsFound = false; - for(ForecastConfiguration forecastConfiguration:currentForecastConfigurations) - { - if(forecastConfiguration.getUseGridWeatherData() && forecastConfiguration.getWeatherStationPointOfInterestId() == null) - { + for (ForecastConfiguration forecastConfiguration : currentForecastConfigurations) { + if (forecastConfiguration.getUseGridWeatherData() + && forecastConfiguration.getWeatherStationPointOfInterestId() == null) { errorMessage.append( - SchedulingUtil.createSchedulingMessageHTML( - "Error with forecast #" + forecastConfiguration.getForecastConfigurationId() + " (" + forecastConfiguration.getLocationPointOfInterestId().getName() + " - " + modelInformationMap.get(forecastConfiguration.getModelId()).getDefaultName() + ")", - "The forecast is configured to use gridded weather data, but the organization " + forecastConfiguration.getVipsLogicUserId().getOrganizationId().getOrganizationName() + " has not set its gridded weather data source. Please contact the system administrator.", - SchedulingUtil.MESSAGE_STATUS_WARNING - ) - ); + SchedulingUtil.createSchedulingMessageHTML( + "Error with forecast #" + forecastConfiguration.getForecastConfigurationId() + + " (" + forecastConfiguration.getLocationPointOfInterestId().getName() + + " - " + + modelInformationMap.get(forecastConfiguration.getModelId()) + .getDefaultName() + + ")", + "The forecast is configured to use gridded weather data, but the organization " + + forecastConfiguration.getVipsLogicUserId().getOrganizationId() + .getOrganizationName() + + " has not set its gridded weather data source. Please contact the system administrator.", + SchedulingUtil.MESSAGE_STATUS_WARNING)); totalNumberofForecastConfigurations++; - } - else if( - weatherStationPointOfInterestId == null - || weatherStationPointOfInterestId <= 0 - || ( - forecastConfiguration.getWeatherStationPointOfInterestId() != null - && forecastConfiguration.getWeatherStationPointOfInterestId().getPointOfInterestId() != null - && forecastConfiguration.getWeatherStationPointOfInterestId().getPointOfInterestId().equals(weatherStationPointOfInterestId) - ) - ) + } else if (weatherStationPointOfInterestId == null + || weatherStationPointOfInterestId <= 0 + || (forecastConfiguration.getWeatherStationPointOfInterestId() != null + && forecastConfiguration.getWeatherStationPointOfInterestId() + .getPointOfInterestId() != null + && forecastConfiguration.getWeatherStationPointOfInterestId().getPointOfInterestId() + .equals(weatherStationPointOfInterestId))) { - try - { + try { totalNumberofForecastConfigurations++; LOGGER.debug("Running forecast #" + forecastConfiguration.getForecastConfigurationId()); SessionControllerGetter.getForecastBean().runForecast(forecastConfiguration); numberOfCompletedForecastConfigurations++; - } - catch (PreprocessorException | RunModelException ex) - { + } catch (PreprocessorException | RunModelException ex) { errorMessage .append( - SchedulingUtil.createSchedulingMessageHTML( - "Error with forecast #" + forecastConfiguration.getForecastConfigurationId() + " (" + forecastConfiguration.getLocationPointOfInterestId().getName() + " - " + modelInformationMap.get(forecastConfiguration.getModelId()).getDefaultName() + ")", - ex.getMessage(), - SchedulingUtil.MESSAGE_STATUS_DANGER) - ); + SchedulingUtil.createSchedulingMessageHTML( + "Error with forecast #" + + forecastConfiguration.getForecastConfigurationId() + " (" + + forecastConfiguration.getLocationPointOfInterestId() + .getName() + + " - " + + modelInformationMap + .get(forecastConfiguration.getModelId()) + .getDefaultName() + + ")", + ex.getMessage(), + SchedulingUtil.MESSAGE_STATUS_DANGER)); } } - if(totalNumberofForecastConfigurations > 0) - { + if (totalNumberofForecastConfigurations > 0) { noForecastConfigurationsFound = false; - tec.setCompleteness(Double.valueOf(numberOfCompletedForecastConfigurations)/Double.valueOf(totalNumberofForecastConfigurations)); - } - else - { + tec.setCompleteness(Double.valueOf(numberOfCompletedForecastConfigurations) + / Double.valueOf(totalNumberofForecastConfigurations)); + } else { noForecastConfigurationsFound = true; } } } - + } - if(noForecastConfigurationsFound) - { - tec.setCompleteness(1.0); - tec.setStatusMessage("No current forecast configurations were found"); + if (noForecastConfigurationsFound) { + tec.setCompleteness(1.0); + tec.setStatusMessage("No current forecast configurations were found"); } - - - if(tec.getTaskExecutor().getCompleteness() != 1.0 || ! errorMessage.isEmpty()) - { - //System.out.println("Error detected, RuntimeException thrown just after this"); + + + if (tec.getTaskExecutor().getCompleteness() != 1.0 || !errorMessage.isEmpty()) { + // System.out.println("Error detected, RuntimeException thrown just after this"); tec.setStatusMessage(errorMessage.toString()); throw new RuntimeException(); } } @Override - public boolean supportsStatusTracking() - { + public boolean supportsStatusTracking() { return true; } - + @Override - public boolean supportsCompletenessTracking() - { + public boolean supportsCompletenessTracking() { return true; } @@ -197,18 +191,19 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ .append(" \"required\":false,") .append(" \"options\": ["); - + retVal.append(" {\"value\":\"") - .append("-1") - .append("\", \"label\":\"") - .append(this.getI18nImpl().getText("pleaseSelect", language)).append(" ").append(this.getI18nImpl().getText("weatherStationPointOfInterestId", language).toLowerCase()) - .append("\",\"selected\":") - .append("false") - .append("}\n"); - List<PointOfInterestWeatherStation> stations = SessionControllerGetter.getPointOfInterestBean().getAllWeatherStations(); + .append("-1") + .append("\", \"label\":\"") + .append(this.getI18nImpl().getText("pleaseSelect", language)).append(" ") + .append(this.getI18nImpl().getText("weatherStationPointOfInterestId", language).toLowerCase()) + .append("\",\"selected\":") + .append("false") + .append("}\n"); + List<PointOfInterestWeatherStation> stations = + SessionControllerGetter.getPointOfInterestBean().getAllWeatherStations(); Collections.sort(stations); - for(PointOfInterest station:stations) - { + for (PointOfInterest station : stations) { retVal.append(" ,{\"value\":\"") .append(station.getPointOfInterestId()) .append("\", \"label\":\"") @@ -218,9 +213,9 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ .append("}\n"); } - retVal .append(" ]") + retVal.append(" ]") .append(" }"); - retVal .append(" ,{") + retVal.append(" ,{") .append(" \"name\":\"organizationId\",") .append(" \"dataType\":\"").append(FormField.DATA_TYPE_INTEGER).append("\",") .append(" \"fieldType\":\"").append(FormField.FIELD_TYPE_SELECT_SINGLE).append("\",") @@ -228,18 +223,18 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ .append(" \"required\":false,") .append(" \"options\": ["); - + retVal.append(" {\"value\":\"") - .append("-1") - .append("\", \"label\":\"") - .append(this.getI18nImpl().getText("pleaseSelect", language)).append(" ").append(this.getI18nImpl().getText("organizationId", language).toLowerCase()) - .append("\",\"selected\":") - .append("false") - .append("}\n"); + .append("-1") + .append("\", \"label\":\"") + .append(this.getI18nImpl().getText("pleaseSelect", language)).append(" ") + .append(this.getI18nImpl().getText("organizationId", language).toLowerCase()) + .append("\",\"selected\":") + .append("false") + .append("}\n"); List<Organization> organizations = SessionControllerGetter.getUserBean().getOrganizations(); - //Collections.sort(organizations); - for(Organization organization:organizations) - { + // Collections.sort(organizations); + for (Organization organization : organizations) { retVal.append(" ,{\"value\":\"") .append(organization.getOrganizationId()) .append("\", \"label\":\"") @@ -249,7 +244,7 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ .append("}\n"); } - retVal .append(" ]") + retVal.append(" ]") .append(" }") .append(" ]") .append("}"); @@ -258,13 +253,11 @@ public class RunAllForecastConfigurationsTask extends VipsLogicTask{ return retVal.toString(); } - private I18nImpl getI18nImpl() - { - if(this.i18n == null) - { + private I18nImpl getI18nImpl() { + if (this.i18n == null) { this.i18n = new I18nImpl("no.nibio.vips.logic.i18n.vipslogictexts"); } return this.i18n; } - + } diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunForecastConfigurationsByIdTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunForecastConfigurationsByIdTask.java index 040696291b7e24e51f9c5666c96492cf50c37066..907f8a2e4b957e991b8f56983a799c46ac2a0bb2 100644 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunForecastConfigurationsByIdTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/RunForecastConfigurationsByIdTask.java @@ -20,7 +20,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; import java.util.Map; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.i18n.I18nImpl; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.SessionControllerGetter; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/SendForecastEventNotificationsTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/SendForecastEventNotificationsTask.java index 25bb6d3bada9ed28bc18025dfe26f9a93de13ebe..74a0f84114afa4b1a8fc8a70f146c4a22180c0e7 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/SendForecastEventNotificationsTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/SendForecastEventNotificationsTask.java @@ -19,7 +19,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.messaging.MessagingBean; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastResultCacheTableTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastResultCacheTableTask.java index 3824b616929467244f8664ff0b01c67c3aef3990..91e4acc2a0ebde40a3f984a869ccb4ef9563ba56 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastResultCacheTableTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastResultCacheTableTask.java @@ -19,7 +19,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.scheduling.VipsLogicTask; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastSummaryTableTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastSummaryTableTask.java index 8533acad16c6e46c7d38a4b314c069d953356787..4cf5d4d51a499a6ca283c934d1d2f8e58e3df4f1 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastSummaryTableTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateForecastSummaryTableTask.java @@ -19,7 +19,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.scheduling.VipsLogicTask; diff --git a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateModelInformationTask.java b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateModelInformationTask.java index b87173d48c85af8bdd95c7a58238a686f7efb8e1..523a9aa0206b793b4516d8e33b10be10c7b8f159 100755 --- a/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateModelInformationTask.java +++ b/src/main/java/no/nibio/vips/logic/scheduling/tasks/UpdateModelInformationTask.java @@ -19,7 +19,7 @@ package no.nibio.vips.logic.scheduling.tasks; import it.sauronsoftware.cron4j.TaskExecutionContext; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.scheduling.TaskResult; diff --git a/src/main/java/no/nibio/vips/logic/service/AuthenticationService.java b/src/main/java/no/nibio/vips/logic/service/AuthenticationService.java index c2155424c0884a3c7a5b615df67453293e181424..5433ab8f73ce686d8440745e0d4b0009dcf7b0f4 100644 --- a/src/main/java/no/nibio/vips/logic/service/AuthenticationService.java +++ b/src/main/java/no/nibio/vips/logic/service/AuthenticationService.java @@ -21,24 +21,24 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; import com.webcohesion.enunciate.metadata.rs.TypeHint; -import javax.ejb.EJB; +import jakarta.ejb.EJB; import no.nibio.vips.logic.controller.session.UserBean; import no.nibio.vips.logic.entity.UserUuid; diff --git a/src/main/java/no/nibio/vips/logic/service/JSONBConfig.java b/src/main/java/no/nibio/vips/logic/service/JSONBConfig.java index 814f9ce13dfbd12d88fae850df396295a50a7cc8..6fef0190743b23c0ebc15a59bd8e2155c5b48102 100644 --- a/src/main/java/no/nibio/vips/logic/service/JSONBConfig.java +++ b/src/main/java/no/nibio/vips/logic/service/JSONBConfig.java @@ -18,15 +18,15 @@ package no.nibio.vips.logic.service; -import javax.json.bind.Jsonb; -import javax.json.bind.JsonbBuilder; -import javax.json.bind.JsonbConfig; -import javax.json.bind.annotation.JsonbDateFormat; -import javax.ws.rs.Consumes; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.ext.ContextResolver; -import javax.ws.rs.ext.Provider; +import jakarta.json.bind.Jsonb; +import jakarta.json.bind.JsonbBuilder; +import jakarta.json.bind.JsonbConfig; +import jakarta.json.bind.annotation.JsonbDateFormat; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.ext.ContextResolver; +import jakarta.ws.rs.ext.Provider; import java.util.logging.Level; import java.util.logging.Logger; @@ -40,7 +40,7 @@ import java.util.logging.Logger; @Provider @Produces(MediaType.APPLICATION_JSON) //@Consumes(MediaType.APPLICATION_JSON) -public class JSONBConfig implements ContextResolver<javax.json.bind.Jsonb> +public class JSONBConfig implements ContextResolver<jakarta.json.bind.Jsonb> { //private final ObjectMapper objectMapper; private final Jsonb jsonB; diff --git a/src/main/java/no/nibio/vips/logic/service/JacksonConfig.java b/src/main/java/no/nibio/vips/logic/service/JacksonConfig.java index 78a7a337f55e22944a9e75a914bf8b98259643ca..6c64b6db345d89facbc3ac71004f445026103ac8 100755 --- a/src/main/java/no/nibio/vips/logic/service/JacksonConfig.java +++ b/src/main/java/no/nibio/vips/logic/service/JacksonConfig.java @@ -25,11 +25,11 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import java.text.SimpleDateFormat; -import javax.ws.rs.Consumes; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.ext.ContextResolver; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.ext.ContextResolver; +import jakarta.ws.rs.ext.Provider; /** * Add this to no.nibio.vips.logic.VIPSLogicApplication if you want all diff --git a/src/main/java/no/nibio/vips/logic/service/LogicService.java b/src/main/java/no/nibio/vips/logic/service/LogicService.java index ccb2553b1bf774034cec5f4ca25773906d05ad55..28c15783c57823b5f38f615392ae3cf7a72fefa1 100755 --- a/src/main/java/no/nibio/vips/logic/service/LogicService.java +++ b/src/main/java/no/nibio/vips/logic/service/LogicService.java @@ -33,24 +33,24 @@ import java.util.Set; import java.util.TimeZone; import java.util.UUID; import java.util.stream.Collectors; -import javax.ejb.EJB; -import javax.persistence.NonUniqueResultException; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.ejb.EJB; +import jakarta.persistence.NonUniqueResultException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import org.apache.commons.validator.routines.EmailValidator; import org.jboss.resteasy.annotations.GZIP; import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget; diff --git a/src/main/java/no/nibio/vips/logic/service/ModelFormService.java b/src/main/java/no/nibio/vips/logic/service/ModelFormService.java index de319c70a2fe5305e3d7901ee0f14a8f658f4305..f629605ea96e382d73fcd8a0f5466567c0b71a0d 100644 --- a/src/main/java/no/nibio/vips/logic/service/ModelFormService.java +++ b/src/main/java/no/nibio/vips/logic/service/ModelFormService.java @@ -18,24 +18,36 @@ package no.nibio.vips.logic.service; -import com.webcohesion.enunciate.metadata.rs.TypeHint; -import no.nibio.vips.logic.entity.*; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; import org.locationtech.jts.geom.Coordinate; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.webcohesion.enunciate.metadata.Facet; - -import java.util.*; -import javax.ejb.EJB; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; +import com.webcohesion.enunciate.metadata.rs.TypeHint; +import jakarta.ejb.EJB; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.Result; import no.nibio.vips.gis.GISUtil; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.PointOfInterestBean; import no.nibio.vips.logic.controller.session.UserBean; +import no.nibio.vips.logic.entity.ForecastConfiguration; +import no.nibio.vips.logic.entity.ForecastModelConfiguration; +import no.nibio.vips.logic.entity.ForecastModelConfigurationPK; +import no.nibio.vips.logic.entity.Organization; +import no.nibio.vips.logic.entity.PointOfInterestWeatherStation; +import no.nibio.vips.logic.entity.VipsLogicUser; +import no.nibio.vips.logic.entity.WeatherStationDataSource; import no.nibio.vips.logic.scheduling.model.PreprocessorException; import no.nibio.vips.logic.scheduling.model.preprocessor.SeptoriaHumidityModelPreprocessor; import no.nibio.vips.logic.util.RunModelException; @@ -43,8 +55,6 @@ import no.nibio.vips.logic.util.SystemTime; import no.nibio.vips.util.ParseRESTParamUtil; import no.nibio.vips.util.WeatherUtil; import no.nibio.vips.util.XDate; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * This is a collection of (one) service(s) for models run from forms (not as part of batch) @@ -179,6 +189,9 @@ public class ModelFormService { ws.setLongitude(pUtil.parseDouble(longitudeStr)); ws.setTimeZone(timezoneForWeatherData); } + else { + return Response.status(Status.BAD_REQUEST).entity("Please specify weatherDataSourceType (weatherstation|grid)").build(); + } fConf.setVipsCoreUserId(vipsLogicUser); fConf.setTimeZone(timezoneForWeatherData); diff --git a/src/main/java/no/nibio/vips/logic/service/ObservationService.java b/src/main/java/no/nibio/vips/logic/service/ObservationService.java index 75d4ac8ba5def7edab317ebfe851561a08c28b84..ec922c16830e8479ea1960de142306d362294560 100755 --- a/src/main/java/no/nibio/vips/logic/service/ObservationService.java +++ b/src/main/java/no/nibio/vips/logic/service/ObservationService.java @@ -44,17 +44,17 @@ import org.slf4j.LoggerFactory; import org.wololo.geojson.Feature; import org.wololo.geojson.GeoJSON; -import javax.ejb.EJB; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.*; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.ejb.EJB; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.*; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import java.io.IOException; import java.net.URI; import java.text.ParseException; diff --git a/src/main/java/no/nibio/vips/logic/service/ObservationTimeSeriesService.java b/src/main/java/no/nibio/vips/logic/service/ObservationTimeSeriesService.java index 3d428239d30a2104f26008039d5173f0d150ce8c..600ba45032fefc4916db8fad82cfaf7528b2a297 100644 --- a/src/main/java/no/nibio/vips/logic/service/ObservationTimeSeriesService.java +++ b/src/main/java/no/nibio/vips/logic/service/ObservationTimeSeriesService.java @@ -17,16 +17,16 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.wololo.geojson.Feature; -import javax.ejb.EJB; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.*; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.*; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import java.io.IOException; import java.util.*; import java.util.stream.Collectors; diff --git a/src/main/java/no/nibio/vips/logic/service/POIService.java b/src/main/java/no/nibio/vips/logic/service/POIService.java index 987896a20dc74646fbf89e94fadb9b832daa83be..4ca5a1f5e26d4240cbb1a6e532001c3d41280abb 100644 --- a/src/main/java/no/nibio/vips/logic/service/POIService.java +++ b/src/main/java/no/nibio/vips/logic/service/POIService.java @@ -21,13 +21,13 @@ import java.io.IOException; import java.text.SimpleDateFormat; import java.util.*; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.*; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.*; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import com.fasterxml.jackson.core.JsonProcessingException; import no.nibio.vips.logic.controller.session.PointOfInterestBean; diff --git a/src/main/java/no/nibio/vips/logic/service/VIPSMobileService.java b/src/main/java/no/nibio/vips/logic/service/VIPSMobileService.java index 2c8c8736c20f8b841343270040a2384c5fb801c3..6fd9c7144201718309e5970080cf0aedd303b22b 100755 --- a/src/main/java/no/nibio/vips/logic/service/VIPSMobileService.java +++ b/src/main/java/no/nibio/vips/logic/service/VIPSMobileService.java @@ -30,15 +30,15 @@ import java.util.Map; import java.util.NoSuchElementException; import java.util.Set; import java.util.TimeZone; -import javax.ejb.EJB; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.Response; import no.nibio.vips.entity.Result; import no.nibio.vips.logic.controller.session.ForecastBean; import no.nibio.vips.logic.controller.session.MessageBean; diff --git a/src/main/java/no/nibio/vips/logic/startup/StartupListener.java b/src/main/java/no/nibio/vips/logic/startup/StartupListener.java index 6e3c8b333f7898ab6f5c47ae6f48c628459a5b87..2a7a720218f16bf19a63affb8fe95697c4f0f3c7 100755 --- a/src/main/java/no/nibio/vips/logic/startup/StartupListener.java +++ b/src/main/java/no/nibio/vips/logic/startup/StartupListener.java @@ -18,9 +18,9 @@ package no.nibio.vips.logic.startup; -import javax.annotation.Resource; -import javax.ejb.EJB; -import javax.servlet.ServletContextEvent; +import jakarta.annotation.Resource; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletContextEvent; import javax.sql.DataSource; import no.nibio.vips.logic.controller.session.SchedulingBean; import org.flywaydb.core.Flyway; @@ -32,7 +32,7 @@ import org.flywaydb.core.Flyway; * @copyright 2013-2022 {@link http://www.nibio.no NIBIO} * @author Tor-Einar Skog <tor-einar.skog@nibio.no> */ -public class StartupListener implements javax.servlet.ServletContextListener{ +public class StartupListener implements jakarta.servlet.ServletContextListener{ @Resource(lookup="java:/jboss/datasources/vipslogic") DataSource vipslogicDS; diff --git a/src/main/java/no/nibio/vips/logic/util/CorsProxyServlet.java b/src/main/java/no/nibio/vips/logic/util/CorsProxyServlet.java index e8d735e5345dd36b4dd3db89941470be9e026a4a..bf97a497757a624bcaab29ec87284cea8b62963e 100644 --- a/src/main/java/no/nibio/vips/logic/util/CorsProxyServlet.java +++ b/src/main/java/no/nibio/vips/logic/util/CorsProxyServlet.java @@ -25,10 +25,10 @@ import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.HttpURLConnection; import java.net.URL; -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; /** * Simple HTTP(S) proxy to avoid the CORS issues with using external web services diff --git a/src/main/java/no/nibio/vips/logic/util/IntegerArrayUserType.java b/src/main/java/no/nibio/vips/logic/util/IntegerArrayUserType.java deleted file mode 100755 index 94ea3338fd130ee6b915935a663404cfca488ee2..0000000000000000000000000000000000000000 --- a/src/main/java/no/nibio/vips/logic/util/IntegerArrayUserType.java +++ /dev/null @@ -1,272 +0,0 @@ -/* - * Copyright (c) 2015 NIBIO <http://www.nibio.no/>. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <https://www.gnu.org/licenses/>. - * - */ - -package no.nibio.vips.logic.util; - -import java.io.Serializable; -import java.sql.Array; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Types; -import org.hibernate.HibernateException; -import org.hibernate.engine.spi.SessionImplementor; -import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.usertype.UserType; - -/** - * Adapted from this: http://stackoverflow.com/questions/21940642/hibernate-postgres-array-type - * @copyright 2015-2019 <a href="http://www.nibio.no/">NIBIO</a> - * @author Tor-Einar Skog <tor-einar.skog@nibio.no> - */ - -public class IntegerArrayUserType implements UserType { - - /** - * Return the SQL type codes for the columns mapped by this type. The - * codes are defined on <tt>java.sql.Types</tt>. - * - * @return int[] the typecodes - * @see java.sql.Types - */ - @Override - public int[] sqlTypes() { - return new int[] { Types.ARRAY }; - } - - /** - * The class returned by <tt>nullSafeGet()</tt>. - * - * @return Class - */ - @Override - public Class returnedClass() { - return Integer[].class; - } - - /** - * Compare two instances of the class mapped by this type for persistence "equality". - * Equality of the persistent state. - * - * @param x - * @param y - * @return boolean - */ - @Override - public boolean equals(Object x, Object y) throws HibernateException { - - if( x== null){ - - return y== null; - } - - return x.equals( y); - } - - /** - * Get a hashcode for the instance, consistent with persistence "equality" - */ - @Override - public int hashCode(Object x) throws HibernateException { - - return x.hashCode(); - } - - /** - * Retrieve an instance of the mapped class from a JDBC resultset. Implementors - * should handle possibility of null values. - * - * @param rs a JDBC result set - * @param names the column names - * @param session - * @param owner the containing entity @return Object - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - //@Override - public Object nullSafeGet( - ResultSet rs, - String[] names, - SessionImplementor session, - Object owner) throws HibernateException, SQLException { - if (rs.wasNull()) { - return null; - } - - try - { - Integer[] array = (Integer[]) rs.getArray(names[0]).getArray(); - return array; - } - catch(NullPointerException ex) - { - return new Integer[0]; - } - } - - /** - * Write an instance of the mapped class to a prepared statement. Implementors - * should handle possibility of null values. A multi-column type should be written - * to parameters starting from <tt>index</tt>. - * - * @param st a JDBC prepared statement - * @param value the object to write - * @param index statement parameter index - * @param session - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - //@Override - public void nullSafeSet(PreparedStatement st, Object value, int index, SessionImplementor session) throws HibernateException, SQLException { - if (value == null) { - st.setNull(index, Types.OTHER); - return; - } - - Integer[] castObject = (Integer[]) value; - Array array = session.connection().createArrayOf("integer", castObject); // The postgres array data type - st.setArray(index, array); - } - - /** - * Return a deep copy of the persistent state, stopping at entities and at - * collections. It is not necessary to copy immutable objects, or null - * values, in which case it is safe to simply return the argument. - * - * @param value the object to be cloned, which may be null - * @return Object a copy - */ - @Override - public Object deepCopy(Object value) throws HibernateException { - - return value; - } - - /** - * Are objects of this type mutable? - * - * @return boolean - */ - @Override - public boolean isMutable() { - return true; - } - - /** - * Transform the object into its cacheable representation. At the very least this - * method should perform a deep copy if the type is mutable. That may not be enough - * for some implementations, however; for example, associations must be cached as - * identifier values. (optional operation) - * - * @param value the object to be cached - * @return a cachable representation of the object - * @throws org.hibernate.HibernateException - * - */ - @Override - public Serializable disassemble(Object value) throws HibernateException { - return (Integer[])this.deepCopy( value); - } - - /** - * Reconstruct an object from the cacheable representation. At the very least this - * method should perform a deep copy if the type is mutable. (optional operation) - * - * @param cached the object to be cached - * @param owner the owner of the cached object - * @return a reconstructed object from the cachable representation - * @throws org.hibernate.HibernateException - * - */ - @Override - public Object assemble(Serializable cached, Object owner) throws HibernateException { - return this.deepCopy( cached); - } - - /** - * During merge, replace the existing (target) value in the entity we are merging to - * with a new (original) value from the detached entity we are merging. For immutable - * objects, or null values, it is safe to simply return the first parameter. For - * mutable objects, it is safe to return a copy of the first parameter. For objects - * with component values, it might make sense to recursively replace component values. - * - * @param original the value from the detached entity being merged - * @param target the value in the managed entity - * @return the value to be merged - */ - @Override - public Object replace(Object original, Object target, Object owner) throws HibernateException { - return original; - } - - /** - * Retrieve an instance of the mapped class from a JDBC resultset. Implementors - * should handle possibility of null values. - * - * @param rs a JDBC result set - * @param strings the column names - * @param ssci - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - @Override - public Object nullSafeGet(ResultSet rs, String[] strings, SharedSessionContractImplementor ssci, Object o) throws HibernateException, SQLException { - if (rs.wasNull()) { - return null; - } - try - { - Integer[] array = (Integer[]) rs.getArray(strings[0]).getArray(); - return array; - } - catch(NullPointerException ex) - { - return new Integer[0]; - } - } - - /** - * Write an instance of the mapped class to a prepared statement. Implementors - * should handle possibility of null values. A multi-column type should be written - * to parameters starting from <tt>index</tt>. - * - * @param ps a JDBC prepared statement - * @param o the object to write - * @param i statement parameter index - * @param ssci - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - @Override - public void nullSafeSet(PreparedStatement ps, Object o, int i, SharedSessionContractImplementor ssci) throws HibernateException, SQLException { - if (o == null) { - ps.setNull(i, Types.OTHER); - return; - } - - Integer[] castObject = (Integer[]) o; - Array array = ssci.connection().createArrayOf("integer", castObject); // The postgres array data type - ps.setArray(i, array); - } - - -} diff --git a/src/main/java/no/nibio/vips/logic/util/JsonPostgreSQLDialect.java b/src/main/java/no/nibio/vips/logic/util/JsonPostgreSQLDialect.java deleted file mode 100755 index 2e7dda6a31abe3dec1d7ec726d5e07ad6fbb52d1..0000000000000000000000000000000000000000 --- a/src/main/java/no/nibio/vips/logic/util/JsonPostgreSQLDialect.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2015 NIBIO <http://www.nibio.no/>. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <https://www.gnu.org/licenses/>. - * - */ - -package no.nibio.vips.logic.util; - -import java.sql.Types; -import org.hibernate.dialect.PostgreSQL9Dialect; - -/** - * @copyright 2015 <a href="http://www.nibio.no/">NIBIO</a> - * @author Tor-Einar Skog <tor-einar.skog@nibio.no> - */ -public class JsonPostgreSQLDialect extends PostgreSQL9Dialect{ - public JsonPostgreSQLDialect() { - - super(); - - this.registerColumnType(Types.JAVA_OBJECT, "json"); - } -} diff --git a/src/main/java/no/nibio/vips/logic/util/PostgresJSONStringConverter.java b/src/main/java/no/nibio/vips/logic/util/PostgresJSONStringConverter.java index d269df6fb18f0bfa4c6e6bbda6e6e8d7f35c700b..aafb201d8772df2d9bbe110bd3f9c30e48e727e7 100755 --- a/src/main/java/no/nibio/vips/logic/util/PostgresJSONStringConverter.java +++ b/src/main/java/no/nibio/vips/logic/util/PostgresJSONStringConverter.java @@ -19,8 +19,8 @@ package no.nibio.vips.logic.util; import java.sql.SQLException; -import javax.persistence.AttributeConverter; -import javax.persistence.Converter; +import jakarta.persistence.AttributeConverter; +import jakarta.persistence.Converter; import org.postgresql.util.PGobject; /** diff --git a/src/main/java/no/nibio/vips/logic/util/RESTAuthenticator.java b/src/main/java/no/nibio/vips/logic/util/RESTAuthenticator.java index c17fc1af77255b59234bd617fb832369a985d3bf..b7c20af15ca2174b1d0304b7319dc490aa686e81 100755 --- a/src/main/java/no/nibio/vips/logic/util/RESTAuthenticator.java +++ b/src/main/java/no/nibio/vips/logic/util/RESTAuthenticator.java @@ -20,9 +20,9 @@ package no.nibio.vips.logic.util; import java.io.IOException; import java.io.UnsupportedEncodingException; -import javax.ws.rs.client.ClientRequestContext; -import javax.ws.rs.client.ClientRequestFilter; -import javax.ws.rs.core.MultivaluedMap; +import jakarta.ws.rs.client.ClientRequestContext; +import jakarta.ws.rs.client.ClientRequestFilter; +import jakarta.ws.rs.core.MultivaluedMap; import javax.xml.bind.DatatypeConverter; diff --git a/src/main/java/no/nibio/vips/logic/util/SimpleMailSender.java b/src/main/java/no/nibio/vips/logic/util/SimpleMailSender.java index 682a18a10fa4557c17d396db997d18aa517cd77f..7dc0c19c122ebd138611344745e289d5155e0ecf 100755 --- a/src/main/java/no/nibio/vips/logic/util/SimpleMailSender.java +++ b/src/main/java/no/nibio/vips/logic/util/SimpleMailSender.java @@ -21,8 +21,8 @@ package no.nibio.vips.logic.util; import java.util.Iterator; import java.util.List; -import javax.mail.*; -import javax.mail.internet.*; +import jakarta.mail.*; +import jakarta.mail.internet.*; import java.util.Properties; @@ -70,8 +70,8 @@ public class SimpleMailSender { Transport.send(message); } - catch(javax.mail.internet.AddressException ae){ae.printStackTrace();} - catch(javax.mail.MessagingException me) {me.printStackTrace();} + catch(jakarta.mail.internet.AddressException ae){ae.printStackTrace();} + catch(jakarta.mail.MessagingException me) {me.printStackTrace();} } /** @@ -106,8 +106,8 @@ public class SimpleMailSender { Transport.send(message); } - catch(javax.mail.internet.AddressException ae){ae.printStackTrace();} - catch(javax.mail.MessagingException me) {me.printStackTrace();} + catch(jakarta.mail.internet.AddressException ae){ae.printStackTrace();} + catch(jakarta.mail.MessagingException me) {me.printStackTrace();} } } \ No newline at end of file diff --git a/src/main/java/no/nibio/vips/logic/util/StringJsonUserType.java b/src/main/java/no/nibio/vips/logic/util/StringJsonUserType.java index 1672d607cbfc160fe8502e5482b303e656010a70..7ecd7ec8375cf88318b4416786cb93493950bfd9 100755 --- a/src/main/java/no/nibio/vips/logic/util/StringJsonUserType.java +++ b/src/main/java/no/nibio/vips/logic/util/StringJsonUserType.java @@ -23,224 +23,74 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; -import org.hibernate.HibernateException; -import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.usertype.UserType; /** - * @copyright 2015-2019 <a href="http://www.nibio.no/">NIBIO</a> + * @copyright 2015-2025 <a href="http://www.nibio.no/">NIBIO</a> * @author Tor-Einar Skog <tor-einar.skog@nibio.no> */ -public class StringJsonUserType implements UserType { +public class StringJsonUserType implements UserType<String> { - /** - * Return the SQL type codes for the columns mapped by this type. The - * codes are defined on <tt>java.sql.Types</tt>. - * - * @return int[] the typecodes - * @see java.sql.Types - */ @Override - public int[] sqlTypes() { - return new int[] { Types.JAVA_OBJECT}; + public int getSqlType() { + return Types.OTHER; } - /** - * The class returned by <tt>nullSafeGet()</tt>. - * - * @return Class - */ @Override - public Class returnedClass() { + public Class<String> returnedClass() { return String.class; } - /** - * Compare two instances of the class mapped by this type for persistence "equality". - * Equality of the persistent state. - * - * @param x - * @param y - * @return boolean - */ @Override - public boolean equals(Object x, Object y) throws HibernateException { - - if( x== null){ - - return y== null; - } - - return x.equals( y); + public boolean equals(String x, String y) { + return x.equals(y); } - /** - * Get a hashcode for the instance, consistent with persistence "equality" - */ @Override - public int hashCode(Object x) throws HibernateException { - + public int hashCode(String x) { return x.hashCode(); } - /** - * Retrieve an instance of the mapped class from a JDBC resultset. Implementors - * should handle possibility of null values. - * - * @param rs a JDBC result set - * @param names the column names - * @param session - * @param owner the containing entity @return Object - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - //@Override - public Object nullSafeGet(ResultSet rs, String[] names, SessionImplementor session, Object owner) throws HibernateException, SQLException { - if(rs.getString(names[0]) == null){ - return null; - } - return rs.getString(names[0]); + @Override + public String nullSafeGet(ResultSet rs, int position, SharedSessionContractImplementor session, Object owner) throws SQLException { + return rs.getString(position); } - /** - * Write an instance of the mapped class to a prepared statement. Implementors - * should handle possibility of null values. A multi-column type should be written - * to parameters starting from <tt>index</tt>. - * - * @param st a JDBC prepared statement - * @param value the object to write - * @param index statement parameter index - * @param session - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - //@Override - public void nullSafeSet(PreparedStatement st, Object value, int index, SessionImplementor session) throws HibernateException, SQLException { - if (value == null) { + @Override + public void nullSafeSet(PreparedStatement st, String value, int index, SharedSessionContractImplementor session) throws SQLException { + if (value != null) { + st.setObject(index, value, Types.OTHER); + } else { st.setNull(index, Types.OTHER); - return; } - - st.setObject(index, value, Types.OTHER); } - /** - * Return a deep copy of the persistent state, stopping at entities and at - * collections. It is not necessary to copy immutable objects, or null - * values, in which case it is safe to simply return the argument. - * - * @param value the object to be cloned, which may be null - * @return Object a copy - */ @Override - public Object deepCopy(Object value) throws HibernateException { - + public String deepCopy(String value) { return value; } - /** - * Are objects of this type mutable? - * - * @return boolean - */ @Override public boolean isMutable() { - return true; + return false; } - /** - * Transform the object into its cacheable representation. At the very least this - * method should perform a deep copy if the type is mutable. That may not be enough - * for some implementations, however; for example, associations must be cached as - * identifier values. (optional operation) - * - * @param value the object to be cached - * @return a cachable representation of the object - * @throws org.hibernate.HibernateException - * - */ @Override - public Serializable disassemble(Object value) throws HibernateException { - return (String)this.deepCopy( value); + public Serializable disassemble(String value) { + return value; } - /** - * Reconstruct an object from the cacheable representation. At the very least this - * method should perform a deep copy if the type is mutable. (optional operation) - * - * @param cached the object to be cached - * @param owner the owner of the cached object - * @return a reconstructed object from the cachable representation - * @throws org.hibernate.HibernateException - * - */ @Override - public Object assemble(Serializable cached, Object owner) throws HibernateException { - return this.deepCopy( cached); + public String assemble(Serializable cached, Object owner) { + return (String) cached; } - /** - * During merge, replace the existing (target) value in the entity we are merging to - * with a new (original) value from the detached entity we are merging. For immutable - * objects, or null values, it is safe to simply return the first parameter. For - * mutable objects, it is safe to return a copy of the first parameter. For objects - * with component values, it might make sense to recursively replace component values. - * - * @param original the value from the detached entity being merged - * @param target the value in the managed entity - * @return the value to be merged - */ @Override - public Object replace(Object original, Object target, Object owner) throws HibernateException { + public String replace(String original, String target, Object owner) { return original; } - - /** - * Retrieve an instance of the mapped class from a JDBC resultset. Implementors - * should handle possibility of null values. - * - * @param rs a JDBC result set - * @param strings the column names - * @param ssci - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - @Override - public Object nullSafeGet(ResultSet rs, String[] strings, SharedSessionContractImplementor ssci, Object o) throws HibernateException, SQLException { - if(rs.getString(strings[0]) == null){ - return null; - } - return rs.getString(strings[0]); - } - - /** - * Write an instance of the mapped class to a prepared statement. Implementors - * should handle possibility of null values. A multi-column type should be written - * to parameters starting from <tt>index</tt>. - * - * @param ps a JDBC prepared statement - * @param o the object to write - * @param i statement parameter index - * @param ssci - * @throws org.hibernate.HibernateException - * - * @throws java.sql.SQLException - */ - @Override - public void nullSafeSet(PreparedStatement ps, Object o, int i, SharedSessionContractImplementor ssci) throws HibernateException, SQLException { - if (o == null) { - ps.setNull(i, Types.OTHER); - return; - } - - ps.setObject(i, o, Types.OTHER); - } - } diff --git a/src/main/java/no/nibio/vips/logic/web/TemplateConfigFilter.java b/src/main/java/no/nibio/vips/logic/web/TemplateConfigFilter.java index 8de57a78a1212ee18130d3d5e3ff6078c3494314..ceb6c2578453b4f54fe897635c72c3182fe26f0e 100755 --- a/src/main/java/no/nibio/vips/logic/web/TemplateConfigFilter.java +++ b/src/main/java/no/nibio/vips/logic/web/TemplateConfigFilter.java @@ -20,13 +20,13 @@ package no.nibio.vips.logic.web; import java.io.IOException; import java.util.Date; -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 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 no.nibio.vips.logic.util.SystemTime; import no.nibio.vips.util.ServletUtil; diff --git a/src/main/java/no/nibio/vips/logic/web/js/JSEnvironment.java b/src/main/java/no/nibio/vips/logic/web/js/JSEnvironment.java index 9c0683c6bac787a30ba234ca77171dd5f21cecd0..17211ad6966de935cdd3ca7767e1150c91e8537e 100755 --- a/src/main/java/no/nibio/vips/logic/web/js/JSEnvironment.java +++ b/src/main/java/no/nibio/vips/logic/web/js/JSEnvironment.java @@ -20,10 +20,10 @@ package no.nibio.vips.logic.web.js; import java.io.IOException; import java.io.PrintWriter; -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 no.nibio.vips.logic.i18n.SessionLocaleUtil; /** diff --git a/src/main/java/no/nibio/vips/observationdata/ObservationDataBean.java b/src/main/java/no/nibio/vips/observationdata/ObservationDataBean.java index 357d5924bc150f6d263631a3db637cfcd2ea45ea..f05aee449984882d82cf0e0970297edaf1f92c6d 100644 --- a/src/main/java/no/nibio/vips/observationdata/ObservationDataBean.java +++ b/src/main/java/no/nibio/vips/observationdata/ObservationDataBean.java @@ -7,11 +7,11 @@ import java.util.Map; import java.util.ResourceBundle; import java.util.Map.Entry; -import javax.ejb.Stateless; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.servlet.http.HttpServletRequest; +import jakarta.ejb.Stateless; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.http.HttpServletRequest; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonMappingException; diff --git a/src/main/java/no/nibio/vips/observationdata/ObservationDataSchema.java b/src/main/java/no/nibio/vips/observationdata/ObservationDataSchema.java index 7243432516effd348cc842f2ed91040e34d919cc..6b5c4b9bc8d56876968178a56069d23c5f8ce5a7 100755 --- a/src/main/java/no/nibio/vips/observationdata/ObservationDataSchema.java +++ b/src/main/java/no/nibio/vips/observationdata/ObservationDataSchema.java @@ -19,17 +19,15 @@ package no.nibio.vips.observationdata; import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.NamedQueries; +import jakarta.persistence.NamedQuery; +import jakarta.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; -import no.nibio.vips.logic.util.StringJsonUserType; -import org.hibernate.annotations.Type; -import org.hibernate.annotations.TypeDef; -import org.hibernate.annotations.TypeDefs; +import org.hibernate.annotations.JdbcTypeCode; +import org.hibernate.type.SqlTypes; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> @@ -38,7 +36,6 @@ import org.hibernate.annotations.TypeDefs; @Entity @Table(name = "observation_data_schema") @XmlRootElement -@TypeDefs( {@TypeDef( name= "StringJsonObject", typeClass = StringJsonUserType.class)}) @NamedQueries({ @NamedQuery(name = "ObservationDataSchema.findAll", query = "SELECT o FROM ObservationDataSchema o"), @NamedQuery(name = "ObservationDataSchema.findByPK", query = "SELECT o FROM ObservationDataSchema o WHERE o.observationDataSchemaPK.organizationId = :organizationId AND o.observationDataSchemaPK.organismId = :organismId"), @@ -49,10 +46,10 @@ public class ObservationDataSchema implements Serializable { private static final long serialVersionUID = 1L; @EmbeddedId protected ObservationDataSchemaPK observationDataSchemaPK; - @Type(type = "StringJsonObject") + @JdbcTypeCode(SqlTypes.JSON) @Column(name = "data_schema") private String dataSchema; - @Type(type = "StringJsonObject") + @JdbcTypeCode(SqlTypes.JSON) @Column(name = "data_model") private String dataModel; diff --git a/src/main/java/no/nibio/vips/observationdata/ObservationDataSchemaPK.java b/src/main/java/no/nibio/vips/observationdata/ObservationDataSchemaPK.java index 9fdaaa02b6b66b74fdc4becb6047df393767a91e..774e17466cc52ab5e93bf0be5a8a3407eb5c6b29 100755 --- a/src/main/java/no/nibio/vips/observationdata/ObservationDataSchemaPK.java +++ b/src/main/java/no/nibio/vips/observationdata/ObservationDataSchemaPK.java @@ -19,10 +19,10 @@ package no.nibio.vips.observationdata; import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.validation.constraints.NotNull; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.validation.constraints.NotNull; /** * @copyright 2016 <a href="http://www.nibio.no/">NIBIO</a> diff --git a/src/main/java/no/nibio/vips/observationdata/ObservationDataService.java b/src/main/java/no/nibio/vips/observationdata/ObservationDataService.java index b2143e09d2854f519c017690bae8d1a1725da42d..d2c1ce08cba1b4163c7d949cca0c1e86e81f53e2 100755 --- a/src/main/java/no/nibio/vips/observationdata/ObservationDataService.java +++ b/src/main/java/no/nibio/vips/observationdata/ObservationDataService.java @@ -21,17 +21,17 @@ package no.nibio.vips.observationdata; import com.ibm.icu.util.ULocale; import com.webcohesion.enunciate.metadata.Facet; import java.io.IOException; -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.NoResultException; -import javax.persistence.PersistenceContext; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; +import jakarta.ejb.EJB; +import jakarta.persistence.EntityManager; +import jakarta.persistence.NoResultException; +import jakarta.persistence.PersistenceContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.Response; import no.nibio.vips.logic.controller.session.ObservationBean; import no.nibio.vips.logic.controller.session.UserBean; diff --git a/src/main/java/no/nibio/web/forms/FormUtil.java b/src/main/java/no/nibio/web/forms/FormUtil.java index 26cac47f96399f147b93bc21535cf14887760b8f..1817d7d4a91dd027df2eef023e19d2f49ac806da 100755 --- a/src/main/java/no/nibio/web/forms/FormUtil.java +++ b/src/main/java/no/nibio/web/forms/FormUtil.java @@ -18,7 +18,9 @@ package no.nibio.web.forms; +import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.nio.charset.Charset; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -30,7 +32,7 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; import no.nibio.vips.logic.util.Globals; -import org.apache.commons.fileupload.FileItem; +import org.apache.commons.fileupload2.core.FileItem; /** * @copyright 2014 <a href="http://www.nibio.no/">NIBIO</a> @@ -46,9 +48,10 @@ public class FormUtil { * @return * @throws UnsupportedEncodingException */ - public static Map<String, String[]> getParameterMap(List<FileItem> items, String encoding) throws UnsupportedEncodingException + public static Map<String, String[]> getParameterMap(List<FileItem> items, String encoding) throws UnsupportedEncodingException, IOException { Map<String, String[]> retVal = new HashMap<>(); + Charset charset = Charset.forName(encoding); for(FileItem item:items) { if(item.isFormField()) @@ -57,13 +60,13 @@ public class FormUtil { if(retVal.containsKey(item.getFieldName())) { List<String> oldValue = new ArrayList(Arrays.asList(retVal.get(item.getFieldName()))); - oldValue.add(item.getString(encoding)); + oldValue.add(item.getString(charset)); String[] newValue = new String[oldValue.size()]; retVal.put(item.getFieldName(),oldValue.toArray(newValue)); } else { - String[] value = {item.getString(encoding)}; + String[] value = {item.getString(charset)}; retVal.put(item.getFieldName(), value); } } diff --git a/src/main/java/no/nibio/web/forms/FormValidator.java b/src/main/java/no/nibio/web/forms/FormValidator.java index d6d0ef0fdfeab610818d29eff8987ae1f08ab447..2d3659cb0b8457bce10bb0dddac267b8761bda2a 100755 --- a/src/main/java/no/nibio/web/forms/FormValidator.java +++ b/src/main/java/no/nibio/web/forms/FormValidator.java @@ -36,9 +36,9 @@ import java.util.List; import java.util.Map; import java.util.MissingResourceException; import java.util.ResourceBundle; -import javax.ejb.EJB; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; +import jakarta.ejb.EJB; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; import no.nibio.vips.logic.authenticate.PasswordValidationException; import no.nibio.vips.logic.controller.session.SessionControllerGetter; import no.nibio.vips.logic.controller.session.UserBean; diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml index 3c40ebdc2e567fe9aa9bf5d72a4d4690cf58c090..75089b795ba03b335671b88b88b109a1362605de 100755 --- a/src/main/resources/META-INF/persistence.xml +++ b/src/main/resources/META-INF/persistence.xml @@ -19,12 +19,12 @@ --> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> <persistence-unit name="VIPSLogic-PU" transaction-type="JTA"> - <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/jboss/datasources/vipslogic</jta-data-source> - <class>no.nibio.vips.logic.messaging.MessageNotificationSubscription</class> - <exclude-unlisted-classes>false</exclude-unlisted-classes> <properties> - <property name="hibernate.dialect" value="org.hibernate.spatial.dialect.postgis.PostgisDialect"/> - </properties> + <!-- Hibernate properties --> + <property name="hibernate.dialect" value="org.hibernate.spatial.dialect.postgis.PostgisPG10Dialect"/> + <property name="hibernate.show_sql" value="false"/> + <property name="hibernate.format_sql" value="true"/> + </properties> </persistence-unit> </persistence> diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 2f2ca6f05c3225d9c37a4a9b10fd4695bd726ee3..d532ad2e29b7e57402b21ae34999fefc96e3f58d 100755 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -242,7 +242,7 @@ org.jboss.resteasy.plugins.server.servlet.FilterDispatcher </filter-class> <init-param> - <param-name>javax.ws.rs.Application</param-name> + <param-name>jakarta.ws.rs.Application</param-name> <param-value>no.nibio.vips.logic.VIPSLogicApplication</param-value> </init-param> </filter> @@ -253,7 +253,7 @@ <!-- FreeMarker configuration --> <servlet> <servlet-name>freemarker</servlet-name> - <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class> + <servlet-class>freemarker.ext.jakarta.servlet.FreemarkerServlet</servlet-class> <!-- FreemarkerServlet settings: --> <init-param> <param-name>TemplatePath</param-name> diff --git a/src/main/webapp/templates/403.ftl b/src/main/webapp/templates/403.ftl index c47107d85b89bc5d32d0ee4feb350c205febb541..34559c41ea0ea1deb25a10900f7db5be1c1cba39 100755 --- a/src/main/webapp/templates/403.ftl +++ b/src/main/webapp/templates/403.ftl @@ -10,7 +10,7 @@ <h1>ERROR 403 - Forbidden</h1> <p>${message}</p> - <#assign nextPage= Request["javax.servlet.forward.servlet_path"] + "?" + Request["javax.servlet.forward.query_string"]!""> + <#assign nextPage= Request["jakarta.servlet.forward.servlet_path"] + "?" + Request["jakarta.servlet.forward.query_string"]!""> <p><a href="/login?nextPage=${nextPage?url}">To login page</a></p> </#macro> <@page_html/> diff --git a/src/main/webapp/templates/error_unknown.ftl b/src/main/webapp/templates/error_unknown.ftl index 9a731004041486b9dfba05dd7febd26f7eb2bd15..5623b9b8b858cd037302e1dcaa3c93f58731f96a 100755 --- a/src/main/webapp/templates/error_unknown.ftl +++ b/src/main/webapp/templates/error_unknown.ftl @@ -19,12 +19,12 @@ <#macro navbar_collapse> </#macro> <#macro page_head> - <title>ERROR ${Request["javax.servlet.error.status_code"]}</title> + <title>ERROR ${Request["jakarta.servlet.error.status_code"]}</title> </#macro> <#macro page_contentwrap_start></#macro> <#macro page_contentwrap_end></#macro> <#macro page_contents> - <h1>ERROR ${Request["javax.servlet.error.status_code"]}</h1> + <h1>ERROR ${Request["jakarta.servlet.error.status_code"]}</h1> <p>${message}</p> <p><a href="/">To front page</a></p> </#macro> diff --git a/src/test/java/no/nibio/vips/logic/entity/rest/PointMappingRequestTest.java b/src/test/java/no/nibio/vips/logic/entity/rest/PointMappingRequestTest.java index ddb73f2d30c28f4f5ee7113aed3282dbd58a1cff..d0ea65c47482c1029673bc6abdfb4deb04b87292 100644 --- a/src/test/java/no/nibio/vips/logic/entity/rest/PointMappingRequestTest.java +++ b/src/test/java/no/nibio/vips/logic/entity/rest/PointMappingRequestTest.java @@ -19,11 +19,11 @@ package no.nibio.vips.logic.entity.rest; import java.util.ArrayList; import java.util.List; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.MediaType; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.MediaType; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; diff --git a/src/test/java/no/nibio/vips/logic/messaging/UniversalMessagingTest.java b/src/test/java/no/nibio/vips/logic/messaging/UniversalMessagingTest.java index b69b046f07a23a99a17ad5682784a2effee98a6e..1bd00d82c596e79403615937e6d4b758e59d9c8b 100755 --- a/src/test/java/no/nibio/vips/logic/messaging/UniversalMessagingTest.java +++ b/src/test/java/no/nibio/vips/logic/messaging/UniversalMessagingTest.java @@ -22,7 +22,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; import java.util.ArrayList; import java.util.List; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; import no.nibio.vips.logic.util.RESTAuthenticator; import org.jboss.resteasy.client.jaxrs.ResteasyClient; import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder;