From a0de2a3b2a5f4a99f280f5caebbca0d183ae109a Mon Sep 17 00:00:00 2001 From: tknall Date: Wed, 7 Feb 2007 10:08:21 +0000 Subject: Bugfix: Querformat, BKU 2.7.x, ... git-svn-id: https://joinup.ec.europa.eu/svn/pdf-as/trunk@35 7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c --- .../egov/egiz/framework/VerificationFilter.java | 3 ++- .../framework/signators/BinarySignator_1_0_0.java | 28 ++++----------------- .../framework/signators/TextualSignator_1_0_0.java | 29 ++++------------------ 3 files changed, 12 insertions(+), 48 deletions(-) (limited to 'src/main/java/at/knowcenter/wag/egov/egiz/framework') diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/framework/VerificationFilter.java b/src/main/java/at/knowcenter/wag/egov/egiz/framework/VerificationFilter.java index dd7a742..26f46e8 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/framework/VerificationFilter.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/framework/VerificationFilter.java @@ -107,7 +107,8 @@ public class VerificationFilter } catch (Exception e) { - throw new PDFDocumentException(201); + logger_.debug("Error while parsing Document.", e); + throw new PDFDocumentException(201, e); } // for (int i = 0; i < blocks.size(); i++) diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/BinarySignator_1_0_0.java b/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/BinarySignator_1_0_0.java index d28ac3b..6f167c8 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/BinarySignator_1_0_0.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/BinarySignator_1_0_0.java @@ -22,11 +22,8 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; -import com.lowagie.text.pdf.PdfPTable; - import at.knowcenter.wag.egov.egiz.PdfAS; import at.knowcenter.wag.egov.egiz.PdfASID; -import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.PDFDocumentException; import at.knowcenter.wag.egov.egiz.exceptions.PresentableException; import at.knowcenter.wag.egov.egiz.framework.SignResult; @@ -34,6 +31,7 @@ import at.knowcenter.wag.egov.egiz.framework.Signator; import at.knowcenter.wag.egov.egiz.framework.SignatorFactory; import at.knowcenter.wag.egov.egiz.pdf.BinarySignature; import at.knowcenter.wag.egov.egiz.pdf.IncrementalUpdateInformation; +import at.knowcenter.wag.egov.egiz.pdf.PositioningInstruction; import at.knowcenter.wag.egov.egiz.pdf.ReplaceInfo; import at.knowcenter.wag.egov.egiz.pdf.StringInfo; import at.knowcenter.wag.egov.egiz.pdf.TablePos; @@ -42,6 +40,8 @@ import at.knowcenter.wag.egov.egiz.sig.SignatureObject; import at.knowcenter.wag.egov.egiz.sig.SignatureTypes; import at.knowcenter.wag.exactparser.ByteArrayUtils; +import com.lowagie.text.pdf.PdfPTable; + /** * Signs the document binary. * @@ -90,25 +90,7 @@ public class BinarySignator_1_0_0 implements Signator PdfPTable pdf_table = PdfAS.createPdfPTableFromSignatureObject(signature_object); - if (pos == null) - { - String pos_string = SettingsReader.getInstance().getSetting(SignatureTypes.SIG_OBJ + signature_type + ".pos", null); - if (pos_string != null) - { - pos = PdfAS.parsePositionFromPosString(pos_string); - pdf_table.setTotalWidth(pos.width); - pdf_table.setLockedWidth(true); - } - else - { - pos = PdfAS.adjustTableAndCalculatePosition(pdf, pdf_table); - } - } - else - { - pdf_table.setTotalWidth(pos.width); - pdf_table.setLockedWidth(true); - } + PositioningInstruction pi = PdfAS.determineTablePositioning(pos, signature_type, pdf, pdf_table); List all_field_definitions = signature_object.getSignatureTypeDefinition().getFieldDefinitions(); List variable_field_definitions = new ArrayList(); @@ -124,7 +106,7 @@ public class BinarySignator_1_0_0 implements Signator variable_field_definitions.add(sfd); } } - IncrementalUpdateInformation iui = BinarySignature.writeIncrementalUpdate(pdf, pdf_table, pos, variable_field_definitions, all_field_definitions); + IncrementalUpdateInformation iui = BinarySignature.writeIncrementalUpdate(pdf, pdf_table, pi, variable_field_definitions, all_field_definitions); String temp_string = iui.temp_ir_number + " " + iui.temp_ir_generation + " obj"; byte[] temp_bytes = temp_string.getBytes("US-ASCII"); diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/TextualSignator_1_0_0.java b/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/TextualSignator_1_0_0.java index 6e605ff..8cdcf63 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/TextualSignator_1_0_0.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/framework/signators/TextualSignator_1_0_0.java @@ -17,19 +17,18 @@ */ package at.knowcenter.wag.egov.egiz.framework.signators; -import com.lowagie.text.pdf.PdfPTable; - import at.knowcenter.wag.egov.egiz.PdfAS; import at.knowcenter.wag.egov.egiz.PdfASID; -import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.PresentableException; import at.knowcenter.wag.egov.egiz.framework.SignResult; import at.knowcenter.wag.egov.egiz.framework.Signator; import at.knowcenter.wag.egov.egiz.framework.SignatorFactory; import at.knowcenter.wag.egov.egiz.pdf.BinarySignature; import at.knowcenter.wag.egov.egiz.pdf.IncrementalUpdateInformation; +import at.knowcenter.wag.egov.egiz.pdf.PositioningInstruction; import at.knowcenter.wag.egov.egiz.pdf.TablePos; -import at.knowcenter.wag.egov.egiz.sig.SignatureTypes; + +import com.lowagie.text.pdf.PdfPTable; /** * Signs a document textually. @@ -93,27 +92,9 @@ public class TextualSignator_1_0_0 implements Signator PdfPTable pdf_table = PdfAS.createPdfPTableFromSignatureObject(iui.signed_signature_object); - if (iui.pos == null) - { - String pos_string = SettingsReader.getInstance().getSetting(SignatureTypes.SIG_OBJ + iui.signature_type + ".pos", null); - if (pos_string != null) - { - iui.pos = PdfAS.parsePositionFromPosString(pos_string); - pdf_table.setTotalWidth(iui.pos.width); - pdf_table.setLockedWidth(true); - } - else - { - iui.pos = PdfAS.adjustTableAndCalculatePosition(iui.original_document, pdf_table); - } - } - else - { - pdf_table.setTotalWidth(iui.pos.width); - pdf_table.setLockedWidth(true); - } + PositioningInstruction pi = PdfAS.determineTablePositioning(iui.pos, iui.signature_type, iui.original_document, pdf_table); - IncrementalUpdateInformation signed_iui = BinarySignature.writeIncrementalUpdate(iui.original_document, pdf_table, iui.pos, null, null); + IncrementalUpdateInformation signed_iui = BinarySignature.writeIncrementalUpdate(iui.original_document, pdf_table, pi, null, null); SignResult sign_result = new SignResult(PdfAS.PDF_MIME_TYPE, signed_iui.signed_pdf); return sign_result; -- cgit v1.2.3