summaryrefslogtreecommitdiff
path: root/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java
diff options
context:
space:
mode:
authorTobias Kellner <tobias.kellner@iaik.tugraz.at>2014-11-27 20:57:33 +0100
committerTobias Kellner <tobias.kellner@iaik.tugraz.at>2014-11-27 20:57:33 +0100
commit9e50f1a103a37d9dcfbeb5ea45bcf6c6c0c0f6dd (patch)
tree03355244de7f50fc75f0ccffb51cd0073ba92340 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java
parent896fbe4a5643bf8c29968f8514a1c14fd51c4d9e (diff)
downloadpdf-over-9e50f1a103a37d9dcfbeb5ea45bcf6c6c0c0f6dd.tar.gz
pdf-over-9e50f1a103a37d9dcfbeb5ea45bcf6c6c0c0f6dd.tar.bz2
pdf-over-9e50f1a103a37d9dcfbeb5ea45bcf6c6c0c0f6dd.zip
Implement PDF-AS 4 changes
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java')
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java
index ab77881a..66680fc8 100644
--- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java
@@ -16,18 +16,21 @@
package at.asit.pdfover.gui.workflow.states;
//Imports
+import java.net.ConnectException;
+
import org.eclipse.swt.SWT;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import at.asit.pdfover.gui.controls.ErrorDialog;
+import at.asit.pdfover.gui.MainWindowBehavior;
+import at.asit.pdfover.gui.MainWindow.Buttons;
import at.asit.pdfover.gui.controls.Dialog.BUTTONS;
+import at.asit.pdfover.gui.controls.ErrorDialog;
import at.asit.pdfover.gui.utils.Messages;
import at.asit.pdfover.gui.workflow.StateMachine;
import at.asit.pdfover.gui.workflow.Status;
import at.asit.pdfover.signator.SignatureException;
import at.asit.pdfover.signator.Signer;
-import at.knowcenter.wag.egov.egiz.exceptions.ConnectorException;
/**
* Logical state for signing process, usually show BKU Dialog during this state.
@@ -92,9 +95,17 @@ public class SigningState extends State {
if(this.threadException != null) {
String message = Messages.getString("error.Signatur"); //$NON-NLS-1$
if (this.threadException instanceof SignatureException) {
- Throwable cause = this.threadException.getCause();
- if (cause instanceof ConnectorException)
+ Throwable cause = this.threadException;
+ while (cause.getCause() != null)
+ cause = cause.getCause();
+ if (cause instanceof ConnectException)
message += ": " + cause.getMessage(); //$NON-NLS-1$
+ if (cause instanceof IllegalStateException) {
+ // Dummy exception - don't display error, go back to BKU Selection
+ this.setNextState(new BKUSelectionState(getStateMachine()));
+ return;
+ }
+
}
ErrorDialog error = new ErrorDialog(getStateMachine().getGUIProvider().getMainShell(),
message, BUTTONS.RETRY_CANCEL);