Fixed setting signature filename when creating an asic container
Created by: rvillido
This modification fixes setting signature filename when creating asic containers. Previously the signatureFileName
parameter was not used correctly.
There was also an exception when a container was signed twice. The following exceptions were thrown when a container was signed twice:
eu.europa.esig.dss.DSSException: java.util.zip.ZipException: duplicate entry: META-INF/null
at eu.europa.esig.dss.asic.signature.ASiCService.createZipEntry(ASiCService.java:382)
at eu.europa.esig.dss.asic.signature.ASiCService.buildXAdES(ASiCService.java:725)
at eu.europa.esig.dss.asic.signature.ASiCService.storesSignature(ASiCService.java:398)
at eu.europa.esig.dss.asic.signature.ASiCService.buildASiCContainer(ASiCService.java:298)
at eu.europa.esig.dss.asic.signature.ASiCService.signDocument(ASiCService.java:177)
at eu.europa.esig.dss.asic.signature.ASiCService.signDocument(ASiCService.java:84)
at eu.europa.esig.dss.signature.AbstractTestSignature.sign(AbstractTestSignature.java:142)
...
Caused by: java.util.zip.ZipException: duplicate entry: META-INF/null
at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:233)
at eu.europa.esig.dss.asic.signature.ASiCService.createZipEntry(ASiCService.java:380)
... 36 more
eu.europa.esig.dss.DSSException: java.util.zip.ZipException: duplicate entry: META-INF/signatures001.xml
at eu.europa.esig.dss.asic.signature.ASiCService.createZipEntry(ASiCService.java:382)
at eu.europa.esig.dss.asic.signature.ASiCService.buildXAdES(ASiCService.java:716)
at eu.europa.esig.dss.asic.signature.ASiCService.storesSignature(ASiCService.java:398)
at eu.europa.esig.dss.asic.signature.ASiCService.buildASiCContainer(ASiCService.java:298)
at eu.europa.esig.dss.asic.signature.ASiCService.signDocument(ASiCService.java:177)
at eu.europa.esig.dss.asic.signature.ASiCService.signDocument(ASiCService.java:84)
at eu.europa.esig.dss.signature.AbstractTestSignature.sign(AbstractTestSignature.java:142)
...
Caused by: java.util.zip.ZipException: duplicate entry: META-INF/signatures001.xml
at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:233)
at eu.europa.esig.dss.asic.signature.ASiCService.createZipEntry(ASiCService.java:380)
... 36 more
I also added a unit test for testing setting specific signature file name.