From f9a64d885db5339164a34c4f365e2ee0cf082a05 Mon Sep 17 00:00:00 2001 From: knowcenter Date: Tue, 24 Jul 2007 13:05:39 +0000 Subject: Template Versioning, BKU and MOA 1.1.0 (detached) NOTE: MOA enveloping is still not fixed git-svn-id: https://joinup.ec.europa.eu/svn/pdf-as/trunk@149 7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c --- .../java/at/knowcenter/wag/egov/egiz/PdfAS.java | 17 +---- .../wag/egov/egiz/sig/ConnectorFactory.java | 38 +++------- .../wag/egov/egiz/sig/SignatureObject.java | 9 --- .../egov/egiz/sig/connectors/ConnectorChooser.java | 86 +++++++++------------- .../sig/connectors/bku/DetachedBKUConnector.java | 24 +++--- .../bku/EnvelopedBase64BKUConnector.java | 4 + .../connectors/moa/DetachedLocRefMOAConnector.java | 8 +- .../egov/egiz/sig/sigid/DetachedIdFormatter.java | 33 +++------ .../sig/sigid/DetachedLocRefMOAIdFormatter.java | 34 ++++----- .../wag/egov/egiz/sig/sigid/OldMOAIdFormatter.java | 25 +------ .../wag/egov/egiz/sig/sigkz/SigKZIDHelper.java | 14 ++-- .../wag/egov/egiz/web/LocalRequestHelper.java | 9 --- .../web/servlets/RetrieveSignatureDataServlet.java | 15 +--- .../egiz/web/servlets/VerifyPreviewServlet.java | 4 +- .../wag/egov/egiz/web/servlets/VerifyServlet.java | 8 +- 15 files changed, 115 insertions(+), 213 deletions(-) (limited to 'src') diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/PdfAS.java b/src/main/java/at/knowcenter/wag/egov/egiz/PdfAS.java index 6ea0a5b..cdc0aa8 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/PdfAS.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/PdfAS.java @@ -65,7 +65,6 @@ import at.knowcenter.wag.egov.egiz.sig.connectors.bku.SignSignatureObject; import at.knowcenter.wag.egov.egiz.sig.signatureobject.SignatureObjectHelper; import at.knowcenter.wag.egov.egiz.tools.CodingHelper; import at.knowcenter.wag.egov.egiz.tools.Normalizer; -import at.knowcenter.wag.egov.egiz.web.SessionInformation; import at.knowcenter.wag.exactparser.ParseDocument; import at.knowcenter.wag.exactparser.parsing.PDFUtils; import at.knowcenter.wag.exactparser.parsing.results.HeaderParseResult; @@ -775,25 +774,16 @@ public abstract class PdfAS // TODO the choosing algorithm should be extracted into a visitor or factory design pattern. public static List verifySignatureHoldersWeb(List signature_holders, - // String connector, String loc_ref) throws PDFDocumentException, NormalizeException, SignatureException - SessionInformation sessionInfo, String loc_ref) throws PDFDocumentException, NormalizeException, SignatureException + String connector, String loc_ref) throws PDFDocumentException, NormalizeException, SignatureException { List results = new ArrayList(); - for (int i = 0; i < signature_holders.size(); i++) { SignatureHolder holder = (SignatureHolder) signature_holders.get(i); - SignatureResponse result = verifyWeb(holder, sessionInfo.connector, loc_ref); + + SignatureResponse result = verifyWeb(holder, connector, loc_ref); results.add(result); - - // increment current_operation to be sure that every signature holder is verified - // if not incremented, the first document is always verified correctly but other not - // because the first document is everytime sent to MOA. - // FIXXME: running too slow - - sessionInfo.current_operation++; } - return results; } @@ -915,7 +905,6 @@ public abstract class PdfAS SignSignatureObject so = SignatureObjectHelper.convertSignatureObjectToSignSignatureObject(so_to_be_verified); String profile = so_to_be_verified.getSignatureTypeDefinition().getType(); - Connector c = ConnectorChooser.chooseWebConnectorForVerify(connector, so_to_be_verified.getKZ(), so.id, profile, loc_ref); return c.doVerify(sd, so); diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/ConnectorFactory.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/ConnectorFactory.java index 236f260..8d9a480 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/ConnectorFactory.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/ConnectorFactory.java @@ -49,8 +49,6 @@ public abstract class ConnectorFactory *

*/ protected static final String CONNECTOR_INFORMATION_FIELD_NAME = "CONNECTOR_INFORMATION"; - - protected static final String MOA_SIG_ID_VISIBLE_KEY = "moa.sign.id.active"; /** * The list of available Connector implementations. @@ -322,30 +320,18 @@ public abstract class ConnectorFactory */ public static boolean needsSIG_ID(String connector) { - //boolean return_result = true; - - if(connector.contains("moa")) - { - String moa_sig_id_visible = null; - - try - { - moa_sig_id_visible = SettingsReader.getInstance().getValueFromKey(MOA_SIG_ID_VISIBLE_KEY); - - if(moa_sig_id_visible == null) - return false; - - if(!moa_sig_id_visible.equals("true")) - return false; - } - catch (SettingsException e) - { - String log_message = "Can not load signature settings. Cause:\n" + e.getMessage(); - logger_.error(log_message); - throw new RuntimeException(e); - } + // all modernn detached signatures have the SIG_ID field. + + try { + if(!SettingsReader.getInstance().getValueFromKey("moa.id.field.visible").equals("true")) + return false; + } catch (SettingsException e) { + e.printStackTrace(); } - - return true;//return_result; + + + return true; + //return !connector.equals("moa"); } + } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/SignatureObject.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/SignatureObject.java index a9fad94..62944e4 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/SignatureObject.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/SignatureObject.java @@ -1606,15 +1606,6 @@ public class SignatureObject implements Serializable setValueBruteForce(SignatureTypes.SIG_ID, null); continue; } -// else -// { -// try { -// setValueBruteForce(SignatureTypes.SIG_ID, -// SettingsReader.getInstance().getValueFromKey("default.moa.signature.id")); -// } catch (SettingsException e) { -// e.printStackTrace(); -// } -// } char[] placeholder_chars = new char[sfd.placeholder_length]; for (int i = 0; i < placeholder_chars.length; i++) diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/ConnectorChooser.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/ConnectorChooser.java index 32dcb72..38680c4 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/ConnectorChooser.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/ConnectorChooser.java @@ -9,7 +9,6 @@ import org.apache.commons.logging.LogFactory; import at.knowcenter.wag.egov.egiz.PdfASID; import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.ConnectorException; -import at.knowcenter.wag.egov.egiz.exceptions.SettingNotFoundException; import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; import at.knowcenter.wag.egov.egiz.framework.SignatorFactory; import at.knowcenter.wag.egov.egiz.sig.connectors.bku.EnvelopedBase64BKUConnector; @@ -31,19 +30,17 @@ public final class ConnectorChooser /** * The log. */ - private static Log log = LogFactory.getLog(ConnectorChooser.class); - private static final String MOA_CMD_LINE_SUPPORTED_KEY = "moa.sign.cmd.detached"; + private static Log log = LogFactory.getLog(ConnectorChooser.class); + + private static final String MOA_DETACHED_ENABLED_KEY = "moa.sign.console.detached.enabled"; - /* - * Called when we try to connect BKU over Web interface - */ public static LocalConnector chooseLocalConnectorForSign(String connector, String profile, String loc_ref_url) throws ConnectorException { log.debug("Choosing LocalConnector for signation..."); log.debug("connector type = " + connector); - + if (!connector.equals("bku")) { log.error("Currently only the BKU connector is fully implemented."); @@ -70,43 +67,37 @@ public final class ConnectorChooser } public static Connector chooseCommandlineConnectorForSign(String connector, - String profile) throws ConnectorException, SettingNotFoundException + String profile) throws ConnectorException { log.debug("Choosing Connector for commandline signation..."); log.debug("connector type = " + connector); if (connector.equals(BKU)) - { - log.debug("sig_app is BKU ==> MultipartDetachedBKUConnector"); //$NON-NLS-1 - + { + log.debug("sig_app is BKU ==> MultipartDetachedBKUConnector"); //$NON-NLS-1$ + return new MultipartDetachedBKUConnector(profile); } - if (connector.equals(MOA)) - { - try { - String cmd_supported = SettingsReader.getInstance().getValueFromKey(MOA_CMD_LINE_SUPPORTED_KEY); - - if(cmd_supported.equals("true")) - { - //TODO: replace hardcoded constants!!! - return new DetachedLocRefMOAConnector(profile, "formdata:fileupload"); - } - else - { - // TODO MOA detached signing is not allowed at the commandline - log.warn("Detached MOA is not supported on the commandline. -> choosing Base64 temporarily."); - - return new EnvelopingBase64MOAConnector(profile); - } - - } catch (SettingsException e) { + { + // is detached mode enabled from console + String detached_mode_enabled = null; + + try + { + detached_mode_enabled = SettingsReader.getInstance().getValueFromKey(MOA_DETACHED_ENABLED_KEY); + } catch (SettingsException e) + { e.printStackTrace(); - } - //if() - //return new DetachedLocRefMOAConnector(profile, "formdata:fileupload"); - //return new EnvelopingBase64MOAConnector(profile); + } + + // currently MOA does'nt support detached mode in command line + if(detached_mode_enabled == null || detached_mode_enabled.equals("true")) + return new DetachedLocRefMOAConnector(profile, "formdata:fileupload"); + + log.warn("Detached MOA is not supported on the commandline. -> choosing Base64 temporarily."); + return new EnvelopingBase64MOAConnector(profile); } throw new ConnectorException(300, "Unknown connector type '" + connector + "' specified."); @@ -232,6 +223,13 @@ public final class ConnectorChooser return chooseEnvelopedBase64ConnectorHotfix(profile, connector); } + // test + if (sig_id.equals("")) + { + log.debug("sig_id is null, which means that it is a MOA signature -> choose a hotfix base64 connector (thus it is moa - it doesn't matter)."); + + return chooseEnvelopedBase64ConnectorHotfix(profile, connector); + } String[] sig_id_parts = sig_id.split("@"); if (sig_id_parts.length == 2) @@ -249,7 +247,6 @@ public final class ConnectorChooser throw new ConnectorException(300, "The SIG_KZ version is 1.0.0, but SIG_ID is neither MOA nor Old base64 nor Hotfix base64 ???'"); } - if (sig_kz.getVersion().equals(SignatorFactory.VERSION_1_1_0)) { log.debug("Version is 1.1.0 -> chose a detached connector."); @@ -315,22 +312,9 @@ public final class ConnectorChooser { log.debug("sig_app is MOA ==> DetachedMOAConnector"); //$NON-NLS-1$ - try - { - if(SettingsReader.getInstance().getValueFromKey(MOA_CMD_LINE_SUPPORTED_KEY).equals("false")) - { - String msg = "A Detached signature cannot be verified with the MOA connector (yet)."; //$NON-NLS-1$ - log.error(msg); - throw new ConnectorException(370, msg); - } else - { - // TODO: replace hardcoded constants - return new DetachedLocRefMOAConnector(profile, "formdata:fileupload"); - } - } catch (SettingsException e) - { - e.printStackTrace(); - } + String msg = "A Detached signature cannot be verified with the MOA connector (yet)."; //$NON-NLS-1$ + log.error(msg); + throw new ConnectorException(370, msg); } throw new ConnectorException(310, "Unknown sig_app '" + sig_app + "'."); //$NON-NLS-1$ //$NON-NLS-2$ } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/DetachedBKUConnector.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/DetachedBKUConnector.java index a48b04c..9713a4a 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/DetachedBKUConnector.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/DetachedBKUConnector.java @@ -295,16 +295,16 @@ public class DetachedBKUConnector implements Connector, LocalConnector String verify_request_template = this.environment.getVerifyRequestTemplate(); String xml_content = null; -// if (SigKZIDHelper.isMOASigned(so)) -// { -// log.debug("The signature is MOA signed -> getting XML content from DetachedLocRefMOA connector."); -// DetachedLocRefMOAConnector moa_conn = new DetachedLocRefMOAConnector(this.environment.getProfile(), "loc ref not needed here"); -// xml_content = moa_conn.prepareXMLContent(data, so); -// } -// else -// { + if (SigKZIDHelper.isMOASigned(so)) + { + log.debug("The signature is MOA signed -> getting XML content from DetachedLocRefMOA connector."); + DetachedLocRefMOAConnector moa_conn = new DetachedLocRefMOAConnector(this.environment.getProfile(), "loc ref not needed here"); + xml_content = moa_conn.prepareXMLContent(data, so); + } + else + { xml_content = prepareXMLContent(data, so); -// } + } String verify_request_xml = verify_request_template.replaceFirst(TemplateReplaces.XML_CONTENT_REPLACE, xml_content); verify_request_xml = verify_request_xml.replaceFirst(TemplateReplaces.LOC_REF_CONTENT_REPLACE, this.environment.getLocRefContent()); @@ -450,7 +450,7 @@ public class DetachedBKUConnector implements Connector, LocalConnector /** * The configuration key of the sign request template. */ - protected static final String SIGN_REQUEST_TEMPLATE_KEY = "bku.sign.request.template"; //$NON-NLS-1$ + protected static final String SIGN_REQUEST_TEMPLATE_KEY = "bku.sign.request.detached"; //$NON-NLS-1$ /** * The configuration key of the sign URL. @@ -460,12 +460,12 @@ public class DetachedBKUConnector implements Connector, LocalConnector /** * The configuration key of the verify request template. */ - protected static final String VERIFY_REQUEST_TEMPLATE_KEY = "bku.verify.request.template"; //$NON-NLS-1$ + protected static final String VERIFY_REQUEST_TEMPLATE_KEY = "bku.verify.request.detached"; //$NON-NLS-1$ /** * The configuration key of the verify template. */ - protected static final String VERIFY_TEMPLATE_KEY = "bku.verify.request.template.keys"; //$NON-NLS-1$ + protected static final String VERIFY_TEMPLATE_KEY = "bku.verify.template.detached"; //$NON-NLS-1$ /** * The configuration key of the verify URL. diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/EnvelopedBase64BKUConnector.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/EnvelopedBase64BKUConnector.java index 4983da7..dc5d35b 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/EnvelopedBase64BKUConnector.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/bku/EnvelopedBase64BKUConnector.java @@ -300,6 +300,10 @@ public class EnvelopedBase64BKUConnector implements Connector, LocalConnector String xml_content = null; if (SigKZIDHelper.isMOASigned(so)) { + // + if(so.id.equals("") || so.id == null) + so.id = "temp"; + // log.debug("The signature is MOA signed -> getting XML content from Base64MOA connector."); EnvelopingBase64MOAConnector moa_conn = new EnvelopingBase64MOAConnector(this.environment.getProfile()); xml_content = moa_conn.prepareXMLContent(data, so); diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/DetachedLocRefMOAConnector.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/DetachedLocRefMOAConnector.java index eeb242f..98d381a 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/DetachedLocRefMOAConnector.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/DetachedLocRefMOAConnector.java @@ -37,7 +37,7 @@ public class DetachedLocRefMOAConnector implements Connector /** * The SIG_ID prefix. */ - //public static final String SIG_ID_PREFIX = "etsi-bku-detached@"; //$NON-NLS-1$ + public static final String SIG_ID_PREFIX = "etsi-bku-detached@"; //$NON-NLS-1$ /** * The log. @@ -316,7 +316,7 @@ public class DetachedLocRefMOAConnector implements Connector /** * The configuration key of the sign request template. */ - protected static final String SIGN_REQUEST_TEMPLATE_KEY = "moa.sign.request.template"; //$NON-NLS-1$ + protected static final String SIGN_REQUEST_TEMPLATE_KEY = "moa.sign.request.detached"; //$NON-NLS-1$ /** * The configuration key of the sign URL. @@ -326,12 +326,12 @@ public class DetachedLocRefMOAConnector implements Connector /** * The configuration key of the verify request template. */ - protected static final String VERIFY_REQUEST_TEMPLATE_KEY = "moa.verify.request.template"; //$NON-NLS-1$ + protected static final String VERIFY_REQUEST_TEMPLATE_KEY = "moa.verify.request.detached"; //$NON-NLS-1$ /** * The configuration key of the verify template. */ - protected static final String VERIFY_TEMPLATE_KEY = "moa.verify.request.template.keys"; //$NON-NLS-1$ + protected static final String VERIFY_TEMPLATE_KEY = "moa.verify.template.detached"; //$NON-NLS-1$ /** * The configuration key of the verify URL. diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedIdFormatter.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedIdFormatter.java index f951b47..7220857 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedIdFormatter.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedIdFormatter.java @@ -15,12 +15,13 @@ import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; */ public class DetachedIdFormatter implements IdFormatter { - // last change: erno & arian; 16.07.2007 13:17 - public static final String DEFAULT_BKU_SIG_ID = "default.bku.signature.id"; /** * The SIG_ID prefix. + * Default value: etsi-bka-1.0 */ - public static String SIG_ID_PREFIX = null; + public static String SIG_ID_PREFIX = "etsi-bka-1.0"; //$NON-NLS-1$ + + public static final String SIG_ID_KEY = "default.bku.algorithm.id"; /** * The log. @@ -32,10 +33,13 @@ public class DetachedIdFormatter implements IdFormatter */ public String formatIds(String[] ids) { - // if SIG_ID_PREFIX null is, call read the config file and set the value from it - if(SIG_ID_PREFIX == null) - setPrefixId(); - + // read SIG_ID_PREFIX from config file + try { + SIG_ID_PREFIX = SettingsReader.getInstance().getValueFromKey(SIG_ID_KEY); + } catch (SettingsException e) { + e.printStackTrace(); + } + // ids algorithm: String join = ""; //$NON-NLS-1$ String base = null; @@ -63,18 +67,5 @@ public class DetachedIdFormatter implements IdFormatter String final_ids = SIG_ID_PREFIX + "@" + idstr; return final_ids; } - - /* - * Read configuration from file and set it to global variable - */ - public void setPrefixId() - { - try - { - SIG_ID_PREFIX = SettingsReader.getInstance().getValueFromKey(DEFAULT_BKU_SIG_ID); - } catch (SettingsException e) - { - e.printStackTrace(); - } - } + } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedLocRefMOAIdFormatter.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedLocRefMOAIdFormatter.java index c1d831e..ec6d054 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedLocRefMOAIdFormatter.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/DetachedLocRefMOAIdFormatter.java @@ -5,7 +5,6 @@ package at.knowcenter.wag.egov.egiz.sig.sigid; import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; -import at.knowcenter.wag.egov.egiz.sig.ConnectorFactory; /** * @author wprinz @@ -13,31 +12,28 @@ import at.knowcenter.wag.egov.egiz.sig.ConnectorFactory; */ public class DetachedLocRefMOAIdFormatter implements IdFormatter { - public static final String MOA_SIG_ID_KEY = "default.moa.signature.id"; + /** + * The SIG_ID prefix. + * Default value: etsi-bka-moa-1.0 + */ + public static String SIG_ID_PREFIX = "etsi-bka-moa-1.0"; //$NON-NLS-1$ + public static String SIG_ID_KEY = "default.moa.algorithm.id"; /** * @see at.knowcenter.wag.egov.egiz.sig.sigid.IdFormatter#formatIds(java.lang.String[]) */ public String formatIds(String[] ids) { - String sig_id_prefix = null; + String tmp = null; - try - { - //FIXME make better - //connector is hard coded since this method is called only when using MOA! - boolean sig_id_visible = ConnectorFactory.needsSIG_ID("moa"); - - if (sig_id_visible) - { - sig_id_prefix = SettingsReader.getInstance().getValueFromKey(MOA_SIG_ID_KEY); - } - } catch (SettingsException e) - { - e.printStackTrace(); - } + try { + tmp = SettingsReader.getInstance().getValueFromKey(SIG_ID_KEY); + if(tmp != null) + SIG_ID_PREFIX = tmp; + } catch (SettingsException e) { + e.printStackTrace(); + } - return sig_id_prefix; + return SIG_ID_PREFIX; } - } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/OldMOAIdFormatter.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/OldMOAIdFormatter.java index d4bd166..05f5db8 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/OldMOAIdFormatter.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigid/OldMOAIdFormatter.java @@ -3,10 +3,6 @@ */ package at.knowcenter.wag.egov.egiz.sig.sigid; -import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; -import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; -import at.knowcenter.wag.egov.egiz.sig.ConnectorFactory; - /** * @author wprinz * @@ -14,31 +10,12 @@ import at.knowcenter.wag.egov.egiz.sig.ConnectorFactory; public class OldMOAIdFormatter implements IdFormatter { - public static final String MOA_SIG_ID_KEY = "default.moa.signature.id"; - /** * @see at.knowcenter.wag.egov.egiz.sig.sigid.IdFormatter#formatIds(java.lang.String[]) */ public String formatIds(String[] ids) { - String sig_id_prefix = null; - - try - { - // FIXME make better - //connector is hard coded since this method is called only when using MOA! - boolean sig_id_visible = ConnectorFactory.needsSIG_ID("moa"); - - if (sig_id_visible) - { - sig_id_prefix = SettingsReader.getInstance().getValueFromKey(MOA_SIG_ID_KEY); - } - } catch (SettingsException e) - { - e.printStackTrace(); - } - - return sig_id_prefix; + return null; } } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigkz/SigKZIDHelper.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigkz/SigKZIDHelper.java index 8a831bd..e751248 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigkz/SigKZIDHelper.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/sigkz/SigKZIDHelper.java @@ -4,7 +4,6 @@ package at.knowcenter.wag.egov.egiz.sig.sigkz; import at.knowcenter.wag.egov.egiz.PdfASID; -import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.ConnectorException; import at.knowcenter.wag.egov.egiz.exceptions.InvalidIDException; import at.knowcenter.wag.egov.egiz.framework.SignatorFactory; @@ -47,17 +46,22 @@ public final class SigKZIDHelper return sig_id == null; } - // new signatures may or may not have the SIG_ID value + // :begin + if(sig_id == null) return true; + if(sig_id.equals("")) + return true; + + // :end + // new signature - sig_id decides String [] ids = sig_id.split("@"); String prefix = ids[0]; - DetachedLocRefMOAIdFormatter moa_id_formater = new DetachedLocRefMOAIdFormatter(); - - if (prefix.equals(moa_id_formater.formatIds(null))) + if (prefix.equals(DetachedLocRefMOAIdFormatter.SIG_ID_PREFIX)) + //if(!prefix.equals("")) { return true; } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/LocalRequestHelper.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/LocalRequestHelper.java index 287bc8e..e8443d7 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/LocalRequestHelper.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/LocalRequestHelper.java @@ -25,9 +25,6 @@ import java.util.Properties; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import at.knowcenter.wag.egov.egiz.exceptions.ConnectorFactoryException; import at.knowcenter.wag.egov.egiz.exceptions.NormalizeException; import at.knowcenter.wag.egov.egiz.exceptions.PresentableException; @@ -63,10 +60,6 @@ public abstract class LocalRequestHelper * The resource of the redirect refresh page jsp. */ public static final String REDIRECT_REFRESH_PAGE_JSP = "/jsp/redirect_refresh_page.jsp"; - - - private static Log log = LogFactory.getLog(LocalRequestHelper.class); - /** * Sets up the local sign procedure. @@ -86,7 +79,6 @@ public abstract class LocalRequestHelper String loc_ref_url = response.encodeURL(loc_ref_URL.toString()); LocalConnector c = ConnectorChooser.chooseLocalConnectorForSign(si.connector, si.type, loc_ref_url); - String sign_request = c.prepareSignRequest(si.iui.signature_data); // TODO local URL @@ -199,7 +191,6 @@ public abstract class LocalRequestHelper SignSignatureObject so = SignatureObjectHelper.convertSignatureObjectToSignSignatureObject(s); LocalConnector local_conn = ConnectorChooser.chooseLocalConnectorForVerify(si.connector, s.getKZ(), so.id, si.type, loc_ref_url); - String request_string = local_conn.prepareVerifyRequest(sd, so); LocalRequest local_request = new LocalRequest("not-needed", request_string); diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/RetrieveSignatureDataServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/RetrieveSignatureDataServlet.java index cbc4e06..402170c 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/RetrieveSignatureDataServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/RetrieveSignatureDataServlet.java @@ -3,9 +3,7 @@ */ package at.knowcenter.wag.egov.egiz.web.servlets; -import java.io.ByteArrayInputStream; import java.io.IOException; -import java.io.InputStream; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; @@ -93,18 +91,7 @@ public class RetrieveSignatureDataServlet extends HttpServlet response.setContentType(sd.getMimeType()); response.setCharacterEncoding(sd.getCharacterEncoding()); - //response.getOutputStream().write(sd.getData()); - - //:::: - InputStream is = new ByteArrayInputStream(sd.getData()); - final int bufferSize = 1024; - byte[] buffer = new byte[bufferSize]; - int len = -1; - while ((len = is.read(buffer)) != -1) { - response.getOutputStream().write(buffer, 0, len); - } - response.getOutputStream().flush(); - //:::: + response.getOutputStream().write(sd.getData()); log.debug("Writing SignatureData finished."); //$NON-NLS-1$ } diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyPreviewServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyPreviewServlet.java index 1ab89ed..3a79939 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyPreviewServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyPreviewServlet.java @@ -561,7 +561,7 @@ public class VerifyPreviewServlet extends HttpServlet URL loc_ref_URL = new URL(request.getScheme(), host, request.getServerPort(), request.getContextPath() + "/RetrieveSignatureData"); String loc_ref_url = response.encodeURL(loc_ref_URL.toString()); - List results = PdfAS.verifySignatureHoldersWeb(holders_to_verify, si, loc_ref_url); + List results = PdfAS.verifySignatureHoldersWeb(holders_to_verify, si.connector, loc_ref_url); boolean backbutton = true; if (verify_which >= 0) { @@ -697,7 +697,7 @@ public class VerifyPreviewServlet extends HttpServlet URL loc_ref_URL = new URL(request.getScheme(), host, request.getServerPort(), request.getContextPath() + "/RetrieveSignatureData"); String loc_ref_url = response.encodeURL(loc_ref_URL.toString()); - List results = PdfAS.verifySignatureHoldersWeb(holders_to_verify, si, loc_ref_url); + List results = PdfAS.verifySignatureHoldersWeb(holders_to_verify, si.connector, loc_ref_url); dispatchToResults(results, request, response, true); } catch (FileUploadException e) diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyServlet.java b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyServlet.java index a85b31f..ba740d0 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyServlet.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/web/servlets/VerifyServlet.java @@ -105,13 +105,15 @@ public class VerifyServlet extends HttpServlet si.mode = null; si.pdf = null; si.type = null; - si.user_name = null; + si.user_name = null; si.user_password = null; si.signature_holders = signature_holders; request.getSession().setAttribute(SessionAttributes.ATTRIBUTE_SESSION_INFORMATION, si); - + System.out.println("\n\n-----------------------------------------------------------------------"); + System.out.println(); + System.out.println("-----------------------------------------------------------------------\n\n"); if (ud.preview) { dispatch(request, response, "/jsp/verifylist.jsp"); @@ -131,7 +133,7 @@ public class VerifyServlet extends HttpServlet URL loc_ref_URL = new URL(request.getScheme(), host, request.getServerPort(), request.getContextPath() + "/RetrieveSignatureData"); String loc_ref_url = response.encodeURL(loc_ref_URL.toString()); - List results = PdfAS.verifySignatureHoldersWeb(signature_holders, si, loc_ref_url); + List results = PdfAS.verifySignatureHoldersWeb(signature_holders, si.connector, loc_ref_url); dispatchToResults(results, request, response); } -- cgit v1.2.3