From c4fd185b6c274e190d3598c19f3452fbbdc25fb1 Mon Sep 17 00:00:00 2001 From: Thomas Lenz Date: Thu, 12 Jun 2014 15:01:06 +0200 Subject: Oracle Database problems solved --- .../at/gv/egovernment/moa/id/moduls/AuthenticationManager.java | 2 +- .../java/at/gv/egovernment/moa/id/storage/AssertionStorage.java | 2 +- .../moa/id/storage/AuthenticationSessionStoreage.java | 9 ++++++--- .../moa/id/commons/db/dao/session/AuthenticatedSessionStore.java | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) (limited to 'id') diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java index d8c3eebb5..9dddce4b0 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java @@ -512,7 +512,7 @@ public class AuthenticationManager extends AuthServlet { try { //check if an MOASession exists and if not create an new MOASession //moasession = getORCreateMOASession(request); - moasession = AuthenticationSessionStoreage.createSession(); + moasession = AuthenticationSessionStoreage.createSession(target.getRequestID()); } catch (MOADatabaseException e1) { Logger.error("Database Error! MOASession can not be created!"); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AssertionStorage.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AssertionStorage.java index 890ec9f0d..2dbcc912b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AssertionStorage.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AssertionStorage.java @@ -183,7 +183,7 @@ public class AssertionStorage { private void cleanDelete(AssertionStore element) { try { - element.setAssertion(new byte[]{}); + element.setAssertion("blank".getBytes()); MOASessionDBUtils.saveOrUpdate(element); } catch (MOADatabaseException e) { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AuthenticationSessionStoreage.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AuthenticationSessionStoreage.java index 1c74aea55..27f53feed 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AuthenticationSessionStoreage.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/storage/AuthenticationSessionStoreage.java @@ -72,7 +72,7 @@ public class AuthenticationSessionStoreage { } } - public static AuthenticationSession createSession() throws MOADatabaseException, BuildException { + public static AuthenticationSession createSession(String pendingRequestID) throws MOADatabaseException, BuildException { String id = Random.nextRandom(); AuthenticatedSessionStore dbsession = new AuthenticatedSessionStore(); @@ -84,6 +84,8 @@ public class AuthenticationSessionStoreage { dbsession.setCreated(now); dbsession.setUpdated(now); + dbsession.setPendingRequestID(pendingRequestID); + AuthenticationSession session = new AuthenticationSession(id, now); encryptSession(session, dbsession); @@ -366,7 +368,7 @@ public class AuthenticationSessionStoreage { dbsession.setSSOSession(true); dbsession.setSSOsessionid(SSOSessionID); dbsession.setAuthenticated(false); - dbsession.setPendingRequestID(""); + dbsession.setPendingRequestID("empty"); //Store MOASession session.saveOrUpdate(dbsession); @@ -700,6 +702,7 @@ public class AuthenticationSessionStoreage { dbsession = new AuthenticatedSessionStore(); dbsession.setSessionid(id); dbsession.setCreated(now); + dbsession.setPendingRequestID(req.getRequestID()); session = new AuthenticationSession(id, now); } else { @@ -903,7 +906,7 @@ public class AuthenticationSessionStoreage { private static void cleanDelete(AuthenticatedSessionStore result) { try { - result.setSession(new byte[] {}); + result.setSession("blank".getBytes()); MOASessionDBUtils.saveOrUpdate(result); } catch (MOADatabaseException e) { diff --git a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/dao/session/AuthenticatedSessionStore.java b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/dao/session/AuthenticatedSessionStore.java index 182995786..e27bd6cd7 100644 --- a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/dao/session/AuthenticatedSessionStore.java +++ b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/dao/session/AuthenticatedSessionStore.java @@ -93,7 +93,7 @@ public class AuthenticatedSessionStore implements Serializable{ @Column(name = "isInterfederatedSSOSession", nullable=false) private boolean isInterfederatedSSOSession = false; - @Column(name = "pendingRequestID", nullable=false) + @Column(name = "pendingRequestID", nullable=true) private String pendingRequestID = ""; @Column(name = "created", updatable=false, nullable=false) -- cgit v1.2.3