Reinstating Access to Revoked Documents

You can reinstate access to a revoked PDF document, resulting in all copies of the revoked document being accessible to users. When a user opens a reinstated document that was revoked, the user is able to view the document.

Note: For more information about the Rights Management service, see Services Reference for LiveCycle.

Summary of steps

To reinstate access to a revoked PDF document, perform the following steps:

  1. Include project files.

  2. Create a Rights Management Client API object.

  3. Retrieve the license identifier of the revoked PDF document.

  4. Reinstate access to the revoked PDF document.

Include project files

Include necessary files into your development project. If you are creating a client application using Java, then include the necessary JAR files. If you are using web services, then make sure that you include the proxy files.

Create a Rights Management Client API object

Before you can programmatically perform a Rights Management service operation, you must create a Rights Management service client object. If you are using the Java API, create a RightsManagementClient object. If you are using the Rights Management web service API, create a RightsManagementServiceService object.

Retrieve the license identifier of the revoked PDF document

You must retrieve the license identifier of the revoked PDF document in order to reinstate a revoked PDF document. After you obtain the license identifier value, you can reinstate a revoked document. If you attempt to reinstate a document that is not revoked, you will cause an exception.

Reinstate access to the revoked PDF document

To reinstate access to a revoked PDF document, you must specify the license identifier of the revoked document. If you attempt to reinstate access to a PDF document that is not revoked, you will cause an exception.

Reinstate access to revoked documents using the Java API

Reinstate access to a revoked document by using the Rights Management API (Java):

  1. Include project files.

    Include client JAR files, such as adobe-rightsmanagement-client.jar, in your Java project’s class path.

  2. Create a Rights Management Client API object.

    • Create a ServiceClientFactory object that contains connection properties.

    • Create a RightsManagementClient object by using its constructor and passing the ServiceClientFactory object.

  3. Retrieve the license identifier of the revoked PDF document.

    • Create a java.io.FileInputStream object that represents the revoked PDF document by using its constructor and passing a string value that specifies the location of the PDF document.

    • Create a com.adobe.idp.Document object by using its constructor and passing the java.io.FileInputStream object.

    • Create a DocumentManager object by invoking the RightsManagementClient object’s getDocumentManager method.

    • Retrieve the license identifier value of the revoked document by invoking the DocumentManager object’s getLicenseId method and passing the com.adobe.idp.Document object that represents the revoked document. This method returns a string value that represents the license identifier.

  4. Reinstate access to the revoked PDF document.

    • Create a LicenseManager object by invoking the RightsManagementClient object’s getLicenseManager method.

    • Reinstate access to the revoked PDF document by invoking the LicenseManager object’s unrevokeLicense method and passing the license identifier value of the revoked document.

Code examples

For code examples using the Rights Management service, see the following Quick Starts in API Quick Starts (Code Examples):

  • “Quick Start (EJB mode): Reinstating access to a revoked document using the Java API”

  • “Quick Start (SOAP mode): Reinstating access to a revoked document using the web service API”

Reinstate access to revoked documents using the web service API

Reinstate access to a revoked document using the Rights Management API (web service):

  1. Include project files.

    Create a Microsoft .NET project that uses MTOM. Ensure that you use the following WSDL definition: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    Note: Replace localhost with the IP address of the server hosting LiveCycle.
  2. Create a Rights Management Client API object.

    • Create a RightsManagementServiceClient object by using its default constructor.

    • Create a RightsManagementServiceClient.Endpoint.Address object by using the System.ServiceModel.EndpointAddress constructor. Pass a string value that specifies the WSDL to the LiveCycle service (for example, http://localhost:8080/soap/services/RightsManagementService?WSDL.) You do not need to use the lc_version attribute. This attribute is used when you create a service reference.)

    • Create a System.ServiceModel.BasicHttpBinding object by getting the value of the RightsManagementServiceClient.Endpoint.Binding field. Cast the return value to BasicHttpBinding.

    • Set the System.ServiceModel.BasicHttpBinding object’s MessageEncoding field to WSMessageEncoding.Mtom. This value ensures that MTOM is used.

    • Enable basic HTTP authentication by performing the following tasks:

      • Assign the LiveCycle user name to the field RightsManagementServiceClient.ClientCredentials.UserName.UserName.

      • Assign the corresponding password value to the field RightsManagementServiceClient.ClientCredentials.UserName.Password.

      • Assign the constant value HttpClientCredentialType.Basic to the field BasicHttpBindingSecurity.Transport.ClientCredentialType.

    • Assign the constant value BasicHttpSecurityMode.TransportCredentialOnly to the field BasicHttpBindingSecurity.Security.Mode.

  3. Retrieve the license identifier of the revoked PDF document.

    • Create a BLOB object by using its constructor. The BLOB object is used to store a revoked PDF document to which access is reinstated.

    • Create a System.IO.FileStream object by invoking its constructor and passing a string value that represents the file location of the revoked PDF document and the mode in which to open the file.

    • Create a byte array that stores the content of the System.IO.FileStream object. You can determine the size of the byte array by getting the System.IO.FileStream object’s Length property.

    • Populate the byte array with stream data by invoking the System.IO.FileStream object’s Read method and passing the byte array, the starting position, and the stream length to read.

    • Populate the BLOB object by assigning its MTOM field with the contents of the byte array.

  4. Reinstate access to the revoked PDF document.

    • Retrieve the license identifier value of the revoked document by invoking the RightsManagementServiceClient object’s getLicenseID method and passing the BLOB object that represents the revoked document. This method returns a string value that represents the license identifier.

    • Reinstate access to the revoked PDF document by invoking the RightsManagementServiceClient object’s unrevokeLicense method and passing a string value that specifies the license identifier value of the revoked PDF document (pass the return value of the RightsManagementServiceClient object’s getLicenseId method).

Code examples

For code examples using the Rights Management service, see the following Quick Starts in API Quick Starts (Code Examples):

  • “Quick Start (MTOM): Reinstating access to a revoked document using the web service API”

  • “Quick Start (SwaRef): Reinstating access to a revoked document using the web service API”

// Ethnio survey code removed