webPDF Toolbox Description

Metadaten bearbeiten mit der webPDF wsclient Bibliothek

In diesem Beitrag möchten wir Ihnen die Description Operation des webPDF toolboxWebService vorstellen. Wir zeigen hier, wie Sie dafür unsere webPDF wsclient Bibliothek einsetzen können.

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:

webPDF und Java: mit der „wsclient“ Bibliothek ganz einfach

Der Aufruf des Webservice

Bevor wir auf die Description Operation eingehen sollten Sie möglichst bereits eine REST- oder SOAP-Session erzeugt haben. Danach wird über den 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) erzeugt:

ToolboxRestWebService toolboxWebService =
    WebServiceFactory.createInstance(
        session, WebServiceType.TOOLBOX
    );

Abschließend wird dem WebService Objekt über Aufruf der Methode setDocument() entweder ein RestDocument oder ein SoapDocument Objekt übergeben.

Die Webservice Parameter

Gerade um ändernden Zugriff auf ein Dokument zu erhalten, müssen Sie in der Regel dem Webserviceaufruf das aktuelle open und/oder permission Passwort des Dokuments mitgeben.

Das können Sie direkt am erzeugten toolboxWebService Objekt tun:

toolboxWebService.getPassword().setOpen("password");
toolboxWebService.getPassword().setPermission("password");

(Hinweis: Sollte das Dokument nicht über einen entsprechenden Passwortschutz verfügen, dann können Sie diesen Punkt überspringen.)

Der Toolbox Webservice…

Der Toolbox Webservice ist ein Endpunkt Ihres webPDF Servers, der eine Reihe von Operationen zusammenfasst, mit denen Sie Ihr PDF Dokument direkt anpassen können. Eine dieser Operationen ist die Description Operation. Mit der Description Operation können Sie verschiedene Meta-Informationen Ihres PDF Dokuments verändern.

Sie fügen Ihrem WebService Objekt wie folgt eine Description Operation hinzu:

DescriptionType description = new DescriptionType();
toolboxWebService.getOperation().add(description);

Am Objekt Description lassen sich folgende Parameter setzen:

allowEmptyValues (Standardwert: false)

Wird dieser boolesche Wert auf true gesetzt, so werden leere Werte für die anderen Parameter akzeptiert.

Wird er auf false gesetzt, so werden leere Werte nicht akzeptiert.

description.setAllowEmptyValues(true);

author (Standardwert: „“)

Setzt den Verfasser des Dokuments auf den gewählten Wert. Die Angabe mehrerer Autoren ist durch Abtrennung mit Semikolon möglich.

description.setAuthor("Author1;Author2");

creator (Standardwert: „“)

Setzt den Ersteller des Dokuments auf den gewählten Wert.

description.setCreator("Creator");

keywords (Standardwert: „“)

Setzt die Stichwörter des Dokuments auf den gewählten Wert. Die Angabe mehrerer Stichwörter ist durch Abtrennung mit Semikolon möglich.

description.setKeywords("Keyword1;Keyword2;Keyword3");

producer (Standardwert: „“)

Setzt die für die Erstellung des Dokuments genutzte Anwendung auf den gewählten Wert.

description.setProducer("Producer");

subject (Standardwert: „“)

Setzt das Thema des Dokuments auf den gewählten Wert.

description.setSubject("Subject");

title (Standardwert: „“)

Setzt den Titel des Dokuments auf den gewählten Wert.

description.setTitle("Title");

Gesamter Webservice-Aufruf

Hier wollen wir Ihnen ein etwas ausführlicheres Beispiel für den gesamten Webserviceaufruf (für die Ansprache der SOAP Schnittstelle) geben:

try (
    // Aufbau einer Session mit dem webPDF Server(hier SOAP):
    SoapSession session = SessionFactory.createInstance(
        WebServiceProtocol.SOAP,
        new URL("http://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:
    DescriptionType description = new DescriptionType();
    toolboxWebService.getOperation().add(description);

    description.setAllowEmptyValues(true);
    description.setAuthor("Author1;Author2");
    description.setCreator("Creator");
    description.setKeywords("Keyword1;Keyword2;Keyword3");
    description.setProducer("Producer");
    description.setSubject("Subject");
    description.setTitle("Title");

    // Ausführung.
    toolboxWebService.process();
} catch (ResultException | MalformedURLException ex) {
    // Zur Auswertung möglicher aufgetretener Fehler, stellt ihnen die
    // wsclient Bibliothek entsprechende Methoden zur Verfügung:
}

Abschließender Hinweis:

Mehr Infos zu den Parametern können Sie auch in unserem Nutzerhandbuch finden: description Parameterstruktur. Beachten Sie bitte auch: Sämtliche Parameter sind mit bestimmten Standardwerten vorbelegt. Ist ein solcher Wert angegeben und weicht dieser nicht von Ihrem gewünschten Wert ab, dann ist es nicht nötig diesen Parameter zu setzen.

Weitere Coding-Beispiele für Webservices, welche Sie mit der ws-client Bibliothek nutzen können finden Sie hier.