aboutsummaryrefslogtreecommitdiff
path: root/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java')
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java62
1 files changed, 35 insertions, 27 deletions
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java
index f3df7a4df..47887ddc2 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java
@@ -79,31 +79,39 @@ public class GetArtifactAction implements IAction {
target);
String samlArtifactBase64 = saml1server.BuildSAMLArtifact(session, oaParam, authData);
-
- String redirectURL = oaURL;
- session.getOAURLRequested();
- if (!session.getBusinessService()) {
- redirectURL = addURLParameter(redirectURL, PARAM_TARGET,
- URLEncoder.encode(session.getTarget(), "UTF-8"));
-
- }
- redirectURL = addURLParameter(redirectURL, PARAM_SAMLARTIFACT,
- URLEncoder.encode(samlArtifactBase64, "UTF-8"));
- redirectURL = httpResp.encodeRedirectURL(redirectURL);
-
- httpResp.setContentType("text/html");
- httpResp.setStatus(302);
-// if (AuthenticationSessionStoreage.isSSOSession(session.getSessionID())) {
-// String url = "RedirectServlet?"+RedirectServlet.REDIRCT_GETPARAM+"="+redirectURL;
-// httpResp.addHeader("Location", url);
-//
-// } else {
+ if (AuthenticationSessionStoreage.isSSOSession(session.getSessionID())) {
+ String url = "RedirectServlet";
+ url = addURLParameter(url, RedirectServlet.REDIRCT_PARAM_URL, URLEncoder.encode(oaURL, "UTF-8"));
+ url = addURLParameter(url, PARAM_TARGET, URLEncoder.encode(oaParam.getTarget(), "UTF-8"));
+ url = addURLParameter(url, PARAM_SAMLARTIFACT, URLEncoder.encode(samlArtifactBase64, "UTF-8"));
+ url = httpResp.encodeRedirectURL(url);
+
+ httpResp.setContentType("text/html");
+ httpResp.setStatus(302);
+ httpResp.addHeader("Location", url);
+
+ } else {
+ String redirectURL = oaURL;
+
+ //session.getOAURLRequested();
+
+ if (!oaParam.getBusinessService()) {
+// redirectURL = addURLParameter(redirectURL, PARAM_TARGET,
+// URLEncoder.encode(session.getTarget(), "UTF-8"));
+ redirectURL = addURLParameter(redirectURL, PARAM_TARGET,
+ URLEncoder.encode(oaParam.getTarget(), "UTF-8"));
+
+
+ }
+ redirectURL = addURLParameter(redirectURL, PARAM_SAMLARTIFACT,
+ URLEncoder.encode(samlArtifactBase64, "UTF-8"));
+ redirectURL = httpResp.encodeRedirectURL(redirectURL);
+ httpResp.setContentType("text/html");
+ httpResp.setStatus(302);
httpResp.addHeader("Location", redirectURL);
-// }
-
- Logger.debug("REDIRECT TO: " + redirectURL);
-
+ Logger.debug("REDIRECT TO: " + redirectURL);
+ }
// CONFIRMATION FOR SSO!
/*
* OAAuthParameter oaParam =
@@ -146,10 +154,10 @@ public class GetArtifactAction implements IAction {
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- } //catch (MOADatabaseException e) {
-// // TODO Auto-generated catch block
-// e.printStackTrace();
-// }
+ } catch (MOADatabaseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
}
protected static String addURLParameter(String url, String paramname,