aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web-db/src/main/java/at
diff options
context:
space:
mode:
authorJakob Heher <jakob.heher@iaik.tugraz.at>2026-04-15 13:49:22 +0200
committerGitHub <noreply@github.com>2026-04-15 13:49:22 +0200
commit77dd3fcc4d85088b15ab859c4438521d9cd6ed10 (patch)
treeaefedc8d2ef77e6819b46a948459d6016dfe5b62 /pdf-as-web-db/src/main/java/at
parent88930540361a88ff56e07fed31004b583f2e729f (diff)
downloadpdf-as-4-77dd3fcc4d85088b15ab859c4438521d9cd6ed10.tar.gz
pdf-as-4-77dd3fcc4d85088b15ab859c4438521d9cd6ed10.tar.bz2
pdf-as-4-77dd3fcc4d85088b15ab859c4438521d9cd6ed10.zip
pdf-as-5 (#82)
- JDK 17 - PDFBox 3 - PDF-AS Web moved to Spring Boot - MOA Integration tests w/ new error code --------- Co-authored-by: Gerald Palfinger <gerald.palfinger@a-sit.at> Co-authored-by: kathrin.resek <kathrin.resek@a-sit.at>
Diffstat (limited to 'pdf-as-web-db/src/main/java/at')
-rw-r--r--pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java260
-rw-r--r--pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Request.java10
-rw-r--r--pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Response.java10
-rw-r--r--pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/StatisticRequest.java10
4 files changed, 124 insertions, 166 deletions
diff --git a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
index e5a789d2..b371026d 100644
--- a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
+++ b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
@@ -9,6 +9,7 @@ import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
+import org.hibernate.query.MutationQuery;
import org.hibernate.query.Query;
import org.hibernate.service.ServiceRegistry;
import org.slf4j.Logger;
@@ -28,7 +29,6 @@ public class DBRequestStore implements IRequestStore {
.getLogger(DBRequestStore.class);
private final SessionFactory sessions;
- private final ServiceRegistry serviceRegistry;
public DBRequestStore() {
final Configuration cfg = new Configuration();
@@ -37,8 +37,8 @@ public class DBRequestStore implements IRequestStore {
cfg.addAnnotatedClass(StatisticRequest.class);
cfg.setProperties(WebConfiguration.getHibernateProps());
- serviceRegistry = new StandardServiceRegistryBuilder().applySettings(
- cfg.getProperties()).build();
+ ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(
+ cfg.getProperties()).build();
sessions = cfg.buildSessionFactory(serviceRegistry);
}
@@ -50,24 +50,18 @@ public class DBRequestStore implements IRequestStore {
final Date date = calendar.getTime();
final SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
logger.info("Clearing Entries before: " + dt.format(date));
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final Query query = session.createQuery("delete from Request as req"
- + " where req.created < :date");
- query.setCalendar("date", calendar);
- query.executeUpdate();
- tx.commit();
- } catch (final Throwable e) {
- logger.error("Failed to save Request", e);
- tx.rollback();
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final MutationQuery query = session.createMutationQuery("delete from Request as req"
+ + " where req.created < :date");
+ query.setParameter("date", calendar.getTime());
+ query.executeUpdate();
+ tx.commit();
+ } catch (final Throwable e) {
+ logger.error("Failed to save Request", e);
+ if (tx != null) tx.rollback();
}
- }
}
public void cleanOldRequestException() {
@@ -77,29 +71,23 @@ public class DBRequestStore implements IRequestStore {
final Date date = calendar.getTime();
final SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
logger.info("Clearing Entries before: " + dt.format(date));
- Session session = null;
- try {
- session = sessions.openSession();
- final Query query = session.createQuery("delete from Request as req"
- + " where req.created < :date");
- query.setCalendar("date", calendar);
- query.executeUpdate();
-
- final Query queryStat = session.createQuery("delete from StatisticRequest as req"
- + " where req.created < :date");
- queryStat.setCalendar("date", calendar);
- queryStat.executeUpdate();
-
- final Query queryResponse = session.createQuery("delete from Response as req"
- + " where req.created < :date");
- queryResponse.setCalendar("date", calendar);
- queryResponse.executeUpdate();
-
- } finally {
- if (session != null) {
- session.close();
+ try (Session session = sessions.openSession()) {
+ final MutationQuery query = session.createMutationQuery("delete from Request as req"
+ + " where req.created < :date");
+ query.setParameter("date", calendar.getTime());
+ query.executeUpdate();
+
+ final MutationQuery queryStat = session.createMutationQuery("delete from StatisticRequest as req"
+ + " where req.created < :date");
+ queryStat.setParameter("date", calendar.getTime());
+ queryStat.executeUpdate();
+
+ final MutationQuery queryResponse = session.createMutationQuery("delete from Response as req"
+ + " where req.created < :date");
+ queryResponse.setParameter("date", calendar.getTime());
+ queryResponse.executeUpdate();
+
}
- }
}
@Override
@@ -107,32 +95,26 @@ public class DBRequestStore implements IRequestStore {
StatisticEvent event) {
// Clean Old Requests
this.cleanOldRequests();
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final Request dbRequest = new Request();
- dbRequest.setSignRequest(request);
- dbRequest.setCreated(Calendar.getInstance().getTime());
- session.save(dbRequest);
-
- final StatisticRequest statisticRequest = new StatisticRequest();
- statisticRequest.setStatisticEvent(event);
- statisticRequest.setCreated(Calendar.getInstance().getTime());
- session.save(statisticRequest);
-
- tx.commit();
- return dbRequest.getId();
- } catch (final Throwable e) {
- logger.error("Failed to save Request", e);
- tx.rollback();
- return null;
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final Request dbRequest = new Request();
+ dbRequest.setSignRequest(request);
+ dbRequest.setCreated(Calendar.getInstance().getTime());
+ session.persist(dbRequest);
+
+ final StatisticRequest statisticRequest = new StatisticRequest();
+ statisticRequest.setStatisticEvent(event);
+ statisticRequest.setCreated(Calendar.getInstance().getTime());
+ session.persist(statisticRequest);
+
+ tx.commit();
+ return dbRequest.getId();
+ } catch (final Throwable e) {
+ logger.error("Failed to save Request", e);
+ if (tx != null) tx.rollback();
+ return null;
}
- }
}
@Override
@@ -140,28 +122,22 @@ public class DBRequestStore implements IRequestStore {
// Clean Old Requests
this.cleanOldRequests();
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final Request dbRequest = session.get(Request.class, id);
-
- final PdfasSignRequest request = dbRequest.getSignRequest();
-
- session.delete(dbRequest);
-
- tx.commit();
- return request;
- } catch (final Throwable e) {
- logger.error("Failed to fetch Request", e);
- tx.rollback();
- return null;
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final Request dbRequest = session.get(Request.class, id);
+
+ final PdfasSignRequest request = dbRequest.getSignRequest();
+
+ session.remove(dbRequest);
+
+ tx.commit();
+ return request;
+ } catch (final Throwable e) {
+ logger.error("Failed to fetch Request", e);
+ if (tx != null) tx.rollback();
+ return null;
}
- }
}
@@ -170,56 +146,44 @@ public class DBRequestStore implements IRequestStore {
// Clean Old Requests
this.cleanOldRequests();
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final StatisticRequest dbRequest = session.get(
- StatisticRequest.class, id);
-
- final StatisticEvent request = dbRequest.getStatisticEvent();
-
- session.delete(dbRequest);
-
- tx.commit();
- return request;
- } catch (final Throwable e) {
- logger.error("Failed to fetch Request", e);
- tx.rollback();
- return null;
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final StatisticRequest dbRequest = session.get(
+ StatisticRequest.class, id);
+
+ final StatisticEvent request = dbRequest.getStatisticEvent();
+
+ session.remove(dbRequest);
+
+ tx.commit();
+ return request;
+ } catch (final Throwable e) {
+ logger.error("Failed to fetch Request", e);
+ if (tx != null) tx.rollback();
+ return null;
}
- }
}
@Override
public String createNewResponseEntry(PdfasSignResponse response) {
// Clean Old Requests
this.cleanOldRequests();
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final Response dbRequest = new Response();
- dbRequest.setSignedResponse(response);
- dbRequest.setCreated(Calendar.getInstance().getTime());
- session.save(dbRequest);
-
- tx.commit();
- return dbRequest.getId();
- } catch (final Throwable e) {
- logger.error("Failed to save Request", e);
- tx.rollback();
- return null;
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final Response dbRequest = new Response();
+ dbRequest.setSignedResponse(response);
+ dbRequest.setCreated(Calendar.getInstance().getTime());
+ session.persist(dbRequest);
+
+ tx.commit();
+ return dbRequest.getId();
+ } catch (final Throwable e) {
+ logger.error("Failed to save Request", e);
+ if (tx != null) tx.rollback();
+ return null;
}
- }
}
@Override
@@ -227,27 +191,21 @@ public class DBRequestStore implements IRequestStore {
// Clean Old Requests
this.cleanOldRequests();
- Session session = null;
- Transaction tx = null;
- try {
- session = sessions.openSession();
- tx = session.beginTransaction();
- final Response dbResponse = session.get(Response.class, id);
-
- final PdfasSignResponse request = dbResponse.getSignedResponse();
-
- session.delete(dbResponse);
-
- tx.commit();
- return request;
- } catch (final Throwable e) {
- logger.error("Failed to fetch Response", e);
- tx.rollback();
- return null;
- } finally {
- if (session != null) {
- session.close();
+ Transaction tx = null;
+ try (Session session = sessions.openSession()) {
+ tx = session.beginTransaction();
+ final Response dbResponse = session.get(Response.class, id);
+
+ final PdfasSignResponse request = dbResponse.getSignedResponse();
+
+ session.remove(dbResponse);
+
+ tx.commit();
+ return request;
+ } catch (final Throwable e) {
+ logger.error("Failed to fetch Response", e);
+ if (tx != null) tx.rollback();
+ return null;
}
- }
}
}
diff --git a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Request.java b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Request.java
index f8a169c3..978601b1 100644
--- a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Request.java
+++ b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Request.java
@@ -2,11 +2,11 @@ package at.gv.egiz.pdfas.web.store.db;
import java.util.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
diff --git a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Response.java b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Response.java
index a47f532c..2367dcf0 100644
--- a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Response.java
+++ b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/Response.java
@@ -2,11 +2,11 @@ package at.gv.egiz.pdfas.web.store.db;
import java.util.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
diff --git a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/StatisticRequest.java b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/StatisticRequest.java
index 23b2425b..276db6b0 100644
--- a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/StatisticRequest.java
+++ b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/db/StatisticRequest.java
@@ -2,11 +2,11 @@ package at.gv.egiz.pdfas.web.store.db;
import java.util.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
import org.hibernate.annotations.GenericGenerator;