Rendern von Formularen mit aktivierten Verwendungsrechten rendering-rights-enabled-forms
Der Forms-Service kann Formulare rendern, auf die Nutzungsrechte angewendet wurden. Verwendungsrechte gelten für Funktionen, die standardmäßig in Acrobat, nicht jedoch in Adobe Reader zur Verfügung stehen, wie etwa die Möglichkeit, Kommentare zu einem Formular hinzuzufügen oder Formularfelder auszufüllen und das Formular zu speichern. Formulare, auf die Nutzungsrechte angewandt wurden, werden als Formulare mit aktivierten Nutzungsrechten bezeichnet. Benutzer, die ein Formular mit aktivierten Nutzungsrechten in Adobe Reader öffnen, können Vorgänge durchführen, die für dieses spezifische Formular aktiviert sind.
Um Verwendungsrechte auf ein Formular anzuwenden, muss der Acrobat Reader DC Extensions-Dienst Teil Ihrer AEM Forms-Installation sein. Außerdem müssen Sie über gültige Anmeldeinformationen verfügen, mit denen Sie Nutzungsrechte auf PDF-Dokumente anwenden können. Das heißt, Sie müssen den Acrobat Reader DC-Erweiterungs-Service ordnungsgemäß konfigurieren, bevor Sie ein Formular mit aktivierten Nutzungsrechten rendern können. (Siehe Informationen zum Acrobat Reader DC-Erweiterungs-Service.)
enableComments
, enableCommentsOnline
, enableEmbeddedFiles
oder enableDigitalSignatures
. (Siehe Vorausfüllen von Formularen mit flexiblen Layouts.)Zusammenfassung der Schritte summary-of-steps
Um ein Formular mit aktivierten Nutzungsrechten zu rendern, führen Sie die folgenden Aufgaben aus:
- Schließen Sie Projektdateien ein.
- Erstellen Sie ein Forms-Client-API-Objekt.
- Legen Sie Laufzeitoptionen für die Nutzungsrechte fest.
- Rendern Sie ein Formular mit aktivierten Nutzungsrechten.
- Schreiben Sie das Formular mit aktivierten Nutzungsrechten in den Client-Webbrowser.
Einschließen von Projektdateien
Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Webdienste verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.
Erstellen eines Forms-Client-API-Objekts
Bevor Sie einen Client-API-Vorgang für den Forms-Service programmgesteuert durchführen können, müssen Sie einen Client für den Forms-Service erstellen.
Festlegen von Laufzeitoptionen für Nutzungsrechte
Legen Sie Laufzeitoptionen für Verwendungsrechte fest, um ein Formular mit aktivierten Verwendungsrechten wiederzugeben. Geben Sie den Alias der Berechtigung an, mit der Verwendungsrechte auf ein Formular angewendet werden. Nachdem Sie den Alias-Wert angegeben haben, geben Sie jedes Nutzungsrecht an, das auf das Formular angewendet werden soll.
Rendern eines Formulars mit aktivierten Nutzungsrechten
Um ein Formular mit aktivierten Nutzungsrechten zu rendern, verwenden Sie dieselbe Anwendungslogik wie beim Rendern eines Formulars ohne Nutzungsrechte. Der einzige Unterschied besteht darin, dass Sie sicherstellen müssen, dass die Laufzeitoptionen für Nutzungsrechte in Ihrer Anwendungslogik enthalten sind.
Schreiben des Formulardaten-Streams in den Client-Webbrowser
Wenn der Forms-Service ein Formular mit aktivierten Nutzungsrechten rendert, wird ein Formulardaten-Stream zurückgegeben, den Sie in den Client-Webbrowser schreiben müssen. Nach dem Schreiben in den Client-Webbrowser ist das Formular für den Benutzer sichtbar. Ein Benutzer, der das Formular mit aktivierten Benutzerrechten in Adobe Reader anzeigt, kann Vorgänge ausführen, die für dieses Formular aktiviert sind.
Siehe auch
Rendern von Formularen mit aktivierten Nutzungsrechten mithilfe der Java-API
Rendering von rechteaktivierten Formularen über die Webservice-API
Einbeziehung von AEM Forms Java-Bibliotheksdateien
Verbindungseigenschaften festlegen
Schnellstart mit der Forms Service-API
Rendern interaktiver PDF-Formulare
Erstellen von Web-Programmen, die Formulare wiedergeben
Rendern von Formularen mit aktivierten Nutzungsrechten mithilfe der Java-API render-rights-enabled-forms-using-the-java-api
So rendern Sie ein Formular mit aktivierten Nutzungsrechten mithilfe der Forms-API (Java):
-
Projektdateien einschließen
Schließen Sie Client-JAR-Dateien wie adobe-forms-client.jar in den Klassenpfad Ihres Java-Projekts ein.
-
Erstellen eines Forms Client-API-Objekts
- Erstellen Sie ein
ServiceClientFactory
-Objekt, das Verbindungseigenschaften enthält. - Erstellen Sie ein
FormsServiceClient
-Objekt, indem Sie seinen Konstruktor verwenden und dasServiceClientFactory
-Objekt übergeben.
- Erstellen Sie ein
-
Optionen für Nutzungsrechte zur Laufzeit festlegen
- Erstellen Sie ein Objekt
ReaderExtensionSpec
, indem Sie den Konstruktor verwenden. - Geben Sie den Alias der Berechtigung an, indem Sie die
ReaderExtensionSpec
-ObjektsetReCredentialAlias
-Methode und geben Sie einen Zeichenfolgenwert an, der den Alias-Wert darstellt. - Legen Sie die einzelnen Nutzungsrechte fest, indem Sie die entsprechende Methode aufrufen, die zum
ReaderExtensionSpec
-Objekt gehört. Sie können jedoch nur dann ein Nutzungsrecht festlegen, wenn die von Ihnen referenzierte Berechtigung dies zulässt. Das heißt, Sie können keine Nutzungsrechte festlegen, wenn die Berechtigung Ihnen dies nicht erlaubt. Beispiel. Um die Verwendungsrechte festzulegen, mit denen ein Benutzer Formularfelder ausfüllen und das Formular speichern kann, rufen Sie dieReaderExtensionSpec
-ObjektsetReFillIn
-Methode und -übergabetrue
.
note note NOTE Die ReaderExtensionSpec
-ObjektsetReCredentialPassword
-Methode. Diese Methode wird vom Forms-Service nicht verwendet. - Erstellen Sie ein Objekt
-
Rendern eines Formulars mit aktivierten Nutzungsrechten
Rufen Sie die Methode
renderPDFFormWithUsageRights
des ObjektsFormsServiceClient
auf und geben Sie die folgenden Werte weiter:- Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B.
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Ein
com.adobe.idp.Document
-Objekt, das Daten enthält, die mit dem Formular zusammengeführt werden sollen. Wenn Sie keine Daten zusammenführen möchten, übergeben Sie ein leerescom.adobe.idp.Document
-Objekt. - Ein
PDFFormRenderSpec
-Objekt, das Laufzeitoptionen speichert. - Ein
ReaderExtensionSpec
-Objekt, das Laufzeitoptionen für Nutzungsrechte speichert. - A
URLSpec
-Objekt, das URI-Werte enthält, die für den Forms-Dienst erforderlich sind.
Die
renderPDFFormWithUsageRights
-Methode gibt einFormsResult
-Objekt zurück, das einen Formulardatenstrom enthält, der in den Client-Webbrowser geschrieben werden muss. - Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B.
-
Schreiben des Formulardaten-Streams in den Client-Webbrowser
- Erstellen Sie eine
com.adobe.idp.Document
-Objekt durch Aufrufen derFormsResult
-ObjektgetOutputContent
-Methode. - Ermitteln Sie den Inhaltstyp des
com.adobe.idp.Document
-Objekts, indem Sie seine MethodegetContentType
aufrufen. - Legen Sie die
javax.servlet.http.HttpServletResponse
Inhaltstyp des Objekts durch Aufrufen seinersetContentType
-Methode verwenden und den Inhaltstyp dercom.adobe.idp.Document
-Objekt. - Erstellen Sie eine
javax.servlet.ServletOutputStream
-Objekt, das zum Schreiben des Formulardaten-Streams in den Client-Webbrowser durch Aufrufen derjavax.servlet.http.HttpServletResponse
-ObjektgetOutputStream
-Methode. - Erstellen Sie ein Objekt vom Typ
java.io.InputStream
, indem Sie die MethodegetInputStream
des Objektscom.adobe.idp.Document
aufrufen. - Erstellen Sie ein Byte-Array, das mit dem Formulardatenstream gefüllt wird, indem Sie die
InputStream
-Objektread
-Methode verwenden und das Byte-Array als Argument übergeben. - Rufen Sie die
javax.servlet.ServletOutputStream
-Objektwrite
-Methode zum Senden des Formulardatenstreams an den Client-Webbrowser. Übergeben Sie das Byte-Array an die Methodewrite
.
- Erstellen Sie eine
Siehe auch
Kurzanleitung (SOAP-Modus): Rendern eines berechtigungsaktivierten Formulars mithilfe der Java-API
Einbeziehung von AEM Forms Java-Bibliotheksdateien
Verbindungseigenschaften festlegen
Rendering von rechteaktivierten Formularen über die Webservice-API render-rights-enabled-forms-using-the-web-service-api
Rendering eines Formulars mit aktivierten Rechten mithilfe der Forms API (Webservice):
-
Projektdateien einschließen
- Erstellen Sie Java-Proxy-Klassen, welche die Forms-Dienst-WSDL verwenden.
- Schließen Sie die Java-Proxy-Klassen in Ihren Klassenpfad ein.
-
Erstellen eines Forms Client-API-Objekts
Erstellen Sie ein
FormsService
-Objekt und legen Sie Authentifizierungswerte fest. -
Optionen für Nutzungsrechte zur Laufzeit festlegen
- Erstellen Sie ein Objekt
ReaderExtensionSpec
, indem Sie den Konstruktor verwenden. - Geben Sie den Alias der Berechtigung an, indem Sie die
ReaderExtensionSpec
-ObjektsetReCredentialAlias
-Methode und geben Sie einen Zeichenfolgenwert an, der den Alias-Wert darstellt. - Legen Sie die einzelnen Nutzungsrechte fest, indem Sie die entsprechende Methode aufrufen, die zum
ReaderExtensionSpec
-Objekt gehört. Sie können jedoch nur dann ein Nutzungsrecht festlegen, wenn die von Ihnen referenzierte Berechtigung dies zulässt. Das heißt, Sie können keine Nutzungsrechte festlegen, wenn die Berechtigung Ihnen dies nicht erlaubt. Rufen Sie dieReaderExtensionSpec
-ObjektsetReFillIn
-Methode und -übergabetrue
.
- Erstellen Sie ein Objekt
-
Rendern eines Formulars mit aktivierten Nutzungsrechten
Rufen Sie die Methode
renderPDFFormWithUsageRights
des ObjektsFormsService
auf und geben Sie die folgenden Werte weiter:- Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B.
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Ein
BLOB
-Objekt, das Daten enthält, die mit dem Formular zusammengeführt werden sollen. Wenn Sie keine Daten mit dem Formular zusammenführen wollen, müssen Sie einBLOB
-Objekt übergeben, das auf einer leeren XML-Datenquelle basiert. Sie können keinBLOB
-Objekt übergeben, das Null ist; andernfalls wird eine Ausnahme ausgelöst. - Ein
PDFFormRenderSpec
-Objekt, das Laufzeitoptionen speichert. - Ein
ReaderExtensionSpec
-Objekt, das Laufzeitoptionen für Nutzungsrechte speichert. - A
URLSpec
-Objekt, das URI-Werte enthält, die für den Forms-Dienst erforderlich sind.
Die
renderPDFFormWithUsageRights
-Methode gibt einFormsResult
-Objekt zurück, das einen Formulardatenstrom enthält, der in den Client-Webbrowser geschrieben werden muss. - Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B.
-
Schreiben des Formulardaten-Streams in den Client-Webbrowser
- Erstellen Sie eine
BLOB
-Objekt, das Formulardaten enthält, durch Aufrufen derFormsResult
-ObjektgetOutputContent
-Methode. - Ermitteln Sie den Inhaltstyp des
BLOB
-Objekts, indem Sie seine MethodegetContentType
aufrufen. - Legen Sie die
javax.servlet.http.HttpServletResponse
Inhaltstyp des Objekts durch Aufrufen seinersetContentType
-Methode verwenden und den Inhaltstyp derBLOB
-Objekt. - Erstellen Sie eine
javax.servlet.ServletOutputStream
-Objekt, das zum Schreiben des Formulardaten-Streams in den Client-Webbrowser durch Aufrufen derjavax.servlet.http.HttpServletResponse
-ObjektgetOutputStream
-Methode. - Erstellen Sie ein Byte-Array und füllen Sie es durch Aufrufen der
BLOB
-ObjektgetBinaryData
-Methode. Mit dieser Aufgabe wird dem Byte-Array der Inhalt desFormsResult
-Objekts zugewiesen. - Rufen Sie die
javax.servlet.http.HttpServletResponse
-Objektwrite
-Methode zum Senden des Formulardatenstreams an den Client-Webbrowser. Übergeben Sie das Byte-Array an die Methodewrite
.
- Erstellen Sie eine
Siehe auch
Rendern von Formularen mit aktivierten Verwendungsrechten
Aufrufen von AEM Forms mit Base64-Kodierung