From af2d6dad0711f95c280621b94f7ca3da8f91632a Mon Sep 17 00:00:00 2001 From: Andreas Fitzek Date: Tue, 6 May 2014 15:55:34 +0200 Subject: SOAP Bulk Request --- .../gv/egiz/pdfas/web/client/RemotePDFSigner.java | 10 +++ .../gv/egiz/pdfas/web/client/test/SimpleTest.java | 72 +++++++++++++++++++--- 2 files changed, 72 insertions(+), 10 deletions(-) (limited to 'pdf-as-web-client') diff --git a/pdf-as-web-client/src/main/java/at/gv/egiz/pdfas/web/client/RemotePDFSigner.java b/pdf-as-web-client/src/main/java/at/gv/egiz/pdfas/web/client/RemotePDFSigner.java index 9e80faf5..0a019152 100644 --- a/pdf-as-web-client/src/main/java/at/gv/egiz/pdfas/web/client/RemotePDFSigner.java +++ b/pdf-as-web-client/src/main/java/at/gv/egiz/pdfas/web/client/RemotePDFSigner.java @@ -8,6 +8,8 @@ import javax.xml.ws.Service; import javax.xml.ws.soap.SOAPBinding; import at.gv.egiz.pdfas.api.ws.PDFASSignParameters; +import at.gv.egiz.pdfas.api.ws.PDFASSignRequest; +import at.gv.egiz.pdfas.api.ws.PDFASSignResponse; import at.gv.egiz.pdfas.api.ws.PDFASSigning; public class RemotePDFSigner implements PDFASSigning { @@ -35,4 +37,12 @@ public class RemotePDFSigner implements PDFASSigning { return proxy.signPDFDokument(inputDocument, parameters); } + public PDFASSignResponse signPDFDokument(PDFASSignRequest request) { + return proxy.signPDFDokument(request); + } + + public PDFASSignResponse[] signPDFDokument(PDFASSignRequest[] request) { + return proxy.signPDFDokument(request); + } + } diff --git a/pdf-as-web-client/src/test/java/at/gv/egiz/pdfas/web/client/test/SimpleTest.java b/pdf-as-web-client/src/test/java/at/gv/egiz/pdfas/web/client/test/SimpleTest.java index 954d0e2e..aa672701 100644 --- a/pdf-as-web-client/src/test/java/at/gv/egiz/pdfas/web/client/test/SimpleTest.java +++ b/pdf-as-web-client/src/test/java/at/gv/egiz/pdfas/web/client/test/SimpleTest.java @@ -6,6 +6,8 @@ import java.net.URL; import at.gv.egiz.pdfas.api.ws.PDFASSignParameters; import at.gv.egiz.pdfas.api.ws.PDFASSignParameters.Connector; +import at.gv.egiz.pdfas.api.ws.PDFASSignRequest; +import at.gv.egiz.pdfas.api.ws.PDFASSignResponse; import at.gv.egiz.pdfas.web.client.RemotePDFSigner; import sun.misc.IOUtils; @@ -13,25 +15,75 @@ public class SimpleTest { public static void main(String[] args) { try { - FileInputStream fis = new FileInputStream("/home/afitzek/simple.pdf"); + FileInputStream fis = new FileInputStream( + "/home/afitzek/simple.pdf"); byte[] inputData = IOUtils.readFully(fis, -1, true); - + PDFASSignParameters signParameters = new PDFASSignParameters(); signParameters.setConnector(Connector.JKS); signParameters.setPosition(null); signParameters.setProfile("SIGNATURBLOCK_DE"); - - URL endpoint = new URL("http://localhost:8080/pdf-as-web/wssign?wsdl"); - + + PDFASSignRequest request = new PDFASSignRequest(); + request.setInputData(inputData); + request.setParameters(signParameters); + request.setRequestID("SOME TEST ID"); + + URL endpoint = new URL("http://demo.egiz.gv.at/demoportal-pdf_as/wssign?wsdl"); + //URL endpoint = new URL( + // "http://localhost:8080/pdf-as-web/wssign?wsdl"); + RemotePDFSigner signer = new RemotePDFSigner(endpoint, false); - - byte[] outputFile = signer.signPDFDokument(inputData, signParameters); - - FileOutputStream fos = new FileOutputStream("/home/afitzek/signed.pdf"); + + System.out.println("Simple Request:"); + byte[] outputFile = signer.signPDFDokument(inputData, + signParameters); + + FileOutputStream fos = new FileOutputStream( + "/home/afitzek/simple_request_signed.pdf"); fos.write(outputFile); fos.close(); + + System.out.println("Simple Request Obj:"); + PDFASSignResponse response = signer.signPDFDokument(request); + + if (response.getSignedPDF() != null) { + FileOutputStream fos2 = new FileOutputStream( + "/home/afitzek/simple_request_obj_signed.pdf"); + fos2.write(response.getSignedPDF()); + fos2.close(); + } + + if(response.getError() != null) { + System.out.println("ERROR: " + response.getError()); + } + + PDFASSignRequest[] bulk = new PDFASSignRequest[20]; + for(int i = 0; i < bulk.length; i++) { + bulk[i] = request; + } + + System.out.println("Bulk Request:"); + PDFASSignResponse[] responses = signer.signPDFDokument(bulk); + + for(int i = 0; i < responses.length; i++) { + PDFASSignResponse bulkresponse = responses[i]; + System.out.println("ID: " + bulkresponse.getRequestID()); + + if (bulkresponse.getSignedPDF() != null) { + FileOutputStream fos2 = new FileOutputStream( + "/home/afitzek/simple_request_obj_signed_"+ i +".pdf"); + fos2.write(bulkresponse.getSignedPDF()); + fos2.close(); + } + + if(bulkresponse.getError() != null) { + System.out.println("ERROR: " + bulkresponse.getError()); + } + } - } catch(Throwable e) { + System.out.println("Done!"); + } catch (Throwable e) { e.printStackTrace(); } } -- cgit v1.2.3