webPDF Toolbox Delete: Seiten entfernen
Minimum technical requirements
- Java version: 7
- webPDF version: 7
- wsclient version: 1
Hier soll es um eine Anwendungsbeschreibung mit Code-Beispielen zur Delete
Operation des webPDF ToolboxWebService
gehen.
Wichtiger Hinweis:
Das nun folgende Coding-Beispiel beruht auf der Nutzung der webPDF wsclient Bibliothek. Um das Beispiel zu verstehen und anzuwenden, sollte zunächst folgender Blogbeitrag beachtet werden:
Erste Schritte: REST- oder SOAP-Session erzeugen
Um den Webservice auf die Art aufrufen zu können, die wir hier vorstellen möchten, gehen wir davon aus, dass Sie zunächst eine REST- oder SOAP-Session erzeugt haben und so über Aufruf der WebserviceFactory
entweder ein ToolboxWebService
Objekt (für eine SOAP Session)
ToolboxWebService toolboxWebService = WebServiceFactory.createInstance( session, WebServiceType.TOOLBOX );
..oder ein ToolboxRestWebService
Objekt (für eine REST Session) erzeugen können:
ToolboxRestWebService toolboxWebService = WebServiceFactory.createInstance( session, WebServiceType.TOOLBOX );
Diesem WebService
Objekt wird dann über Aufruf der Methode setDocument()
entweder ein RestDocument
oder ein SoapDocument
Objekt übergeben.
Zum Webservice Parameter
Weil Sie Ihre Dokumente anpassen möchten, ist es notwendig, dass Sie dem Webserviceaufruf das aktuelle open
und/oder permission
Passwort des Dokuments mitgeben. Das geschieht am erzeugten ToolboxWebService
Objekt:
toolboxWebService.getPassword().setOpen("password"); toolboxWebService.getPassword().setPermission("password");
(Diesen Punkt brauchen Sie nur beachten, wenn das Dokument über einen entsprechenden Passwortschutz verfügt.)
Toolbox Webservice: Die Delete Operation
Der ToolboxWebService
kann man als einen Endpunkt Ihres webPDF Servers verstehen, der einige Oparationen zusammenfasst und durch den es möglich ist, Ihr PDF Dokument entsprechend anzupassen. Hier soll es nun um ein konretes Beispiel, nämlich die Delete
Operation (Seiten löschen/Seiten entfernen) gehen.
Delete
Operation dem WebService
Objekt hinzufügen:
DeleteType delete = new DeleteType(); toolboxWebService.getOperation().add(delete);
Am Objekt Delete
lassen sich folgende Parameter setzen:
pages (Standardwert: „1“)
Legt den Seitenbereich fest, der gelöscht werden soll. Es kann entweder eine Einzelseite („1“) eine Auflistung von Seiten („1,3,5“), ein Seitenbereich („1-5“) oder eine Kombination dieser Elemente („1,3-5,6“) angegeben werden. Alle Seiten des Dokuments können über „*“ ausgewählt werden.
delete.setPages("1,3-5,6");
Ausführlicheres Beispiel
Hier erfolgt nun abschließend ein etwas ausführlicheres Beispiel für unseren gesamten Webserviceaufruf (für die Ansprache der SOAP Schnittstelle):
try ( // Aufbau einer Session mit dem webPDF Server(hier SOAP): SoapSession session = SessionFactory.createInstance( WebServiceProtocol.SOAP, new URL("https://localhost:8080/webPDF/") ); // Bereit stellen des Dokuments, das verarbeitet werden soll // und der Datei, in die das Ergebnis geschrieben werden soll: SoapDocument soapDocument = new SoapDocument( new File("Pfad des Quelldokuments").toURI(), new File("Pfad des Zieldokuments") ) ) { // Wahl des Webservices über eine Factory: ToolboxWebService toolboxWebService = WebServiceFactory.createInstance( session, WebServiceType.TOOLBOX ); toolboxWebService.setDocument(soapDocument); toolboxWebService.getPassword().setOpen("password"); toolboxWebService.getPassword().setPermission("password"); // Objektorientierte Parametrisierung des Aufrufs: DeleteType delete = new DeleteType(); toolboxWebService.getOperation().add(delete); delete.setPages("1-5"); // Ausführung. toolboxWebService.process(); } catch (ResultException | MalformedURLException ex) { // Zur Auswertung möglicher aufgetretener Fehler, stellt ihnen die // wsclient Bibliothek entsprechende Methoden zur Verfügung: }
Hinweis:
Sie finden weiterführende Infos zu den Parametern, zu Errorcodes oder auch zu SOAP und REST im webPDF-Nutzerhandbuch.
Weitere Coding-Beispiele für Webservices, welche Sie mit der ws-client Bibliothek nutzen können finden Sie hier.