diff options
Diffstat (limited to 'src/main/java/at/knowcenter/wag/egov/egiz/web')
6 files changed, 17 insertions, 3 deletions
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/ExternAppInformation.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/ExternAppInformation.java index 73f10aa..d00ec61 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/ExternAppInformation.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/ExternAppInformation.java @@ -12,11 +12,17 @@ public class ExternAppInformation implements Serializable { public String invoke_url;
public long pdf_id;
public String session_id;
+ public String invoke_error_url;
public ExternAppInformation(String url, String id, String session_id) {
+ this(url, id, session_id, null);
+ }
+
+ public ExternAppInformation(String url, String id, String session_id, String errorUrl) {
this.invoke_url = url;
this.pdf_id = Long.parseLong(id);
this.session_id = session_id;
+ this.invoke_error_url = errorUrl;
}
}
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/FormFields.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/FormFields.java index ad480cc..7b8164a 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/FormFields.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/FormFields.java @@ -88,6 +88,8 @@ public abstract class FormFields public static final String FIELD_FILE_LENGTH = "num-bytes";
public static final String FIELD_INVOKE_APP_URL = "invoke-app-url";
+
+ public static final String FIELD_INVOKE_APP_ERROR_URL = "invoke-app-error-url";
public static final String FIELD_SESSION_ID = "session-id";
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/SessionAttributes.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/SessionAttributes.java index f4956be..1a7d90f 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/SessionAttributes.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/SessionAttributes.java @@ -54,4 +54,9 @@ public abstract class SessionAttributes */
public static final String DOWNLOAD_URL_FOR_SIGNED_PDF_DOCUMENT = "java.lang.String:downloadURL";
+ /**
+ * The notification url of an external webapplication.
+ */
+ public static final String PARENT_WEBAPP_REDIRECT_URL = "java.lang.String:parentWebAppRedirectURL";
+
}
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/DataURLServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/DataURLServlet.java index 16352de..f74bd1c 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/DataURLServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/DataURLServlet.java @@ -277,7 +277,7 @@ public class DataURLServlet extends HttpServlet // redirect to download.jsp but return the sign-response immediately
if (si.exappinf != null) {
log.debug("Entering external application interface mode. Skipping redirection to download page.");
- SignServletHelper.returnSignResponse(si, response);
+ SignServletHelper.returnSignResponse(si, request, response);
// Not needed due to redirection of returnSignResponse.
// Just to clarify that there must not be any code after returnSignResponse.
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/ProvidePDFServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/ProvidePDFServlet.java index 1efc64f..c40f3c6 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/ProvidePDFServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/ProvidePDFServlet.java @@ -61,7 +61,7 @@ public class ProvidePDFServlet extends HttpServlet { log.debug("Returning signed pdf to browser.");
// log.debug("Invalidating session.");
// session.invalidate();
- SignServletHelper.returnSignResponse(si, response);
+ SignServletHelper.returnSignResponse(si, request, response);
return;
}
} else {
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/SignServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/SignServlet.java index 589de7c..792a3e1 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/SignServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/SignServlet.java @@ -184,6 +184,7 @@ public class SignServlet extends HttpServlet String pdf_id = (String) request.getParameter(FormFields.FIELD_PDF_ID);
String pdf_length = (String) request.getParameter(FormFields.FIELD_FILE_LENGTH);
String invoke_url = (String) request.getParameter(FormFields.FIELD_INVOKE_APP_URL);
+ String invoke_error_url = (String) request.getParameter(FormFields.FIELD_INVOKE_APP_ERROR_URL);
String session_id = (String) request.getParameter(FormFields.FIELD_SESSION_ID);
String sig_pos_y = (String) request.getParameter(FormFields.FIELD_SIGPOS_Y);
String sig_pos_p = (String) request.getParameter(FormFields.FIELD_SIGPOS_P);
@@ -227,7 +228,7 @@ public class SignServlet extends HttpServlet ud = ud_extern;
- exappinf = new ExternAppInformation(invoke_url, pdf_id, session_id);
+ exappinf = new ExternAppInformation(invoke_url, pdf_id, session_id, invoke_error_url);
}
else
{
|