The following Java web service code example retrieves the
names of signature fields located in a PDF document named LoanSig.pdf.
(See Retrieving Signature Field Names.)
/**
* Ensure that you create Java proxy files that consume
* the Signature services WSDL. You can use JAX-WS to create
* the proxy Java files.
*
* If you are supplying a set of associated files, add the file name to the BLOB attribute.
* The create3DPDF service uses those file names to resolve references from the main assembly file.
*
* For information, see "Invoking LiveCycle using SwaRef" in Programming with LiveCycle.
*/
import java.util.*;
import java.io.*;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.xml.ws.BindingProvider;
import com.adobe.idp.services.*;
public class GetSignatureFieldsSWAref {
public static void main(String[] args) {
try
{
// Create a SignatureServiceService object
SignatureServiceService signatureService = new SignatureServiceService();
SignatureService signatureClient = signatureService.getSignatureservice();
//Set connection settings
String url = "http://hiro-xp:8080/soap/services/signatureservice?blob=swaRef";
String username = "administrator";
String password = "password";
((BindingProvider) signatureClient).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url);
((BindingProvider) signatureClient).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, username);
((BindingProvider) signatureClient).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, password);
//Set an input file as a BLOB
String path1 = "C:\\Adobe\LoanSig.pdf";
FileDataSource ds1 = new FileDataSource(path1);
DataHandler handler1 = new DataHandler(ds1);
BLOB inDoc = new BLOB();
inDoc.setSwaRef(handler1);
//Retrieve the name of the document's signature fields
MyArrayOfPDFSignatureField fieldNames = signatureClient.getSignatureFieldList(inDoc);
//Obtain the name of each signature field by iterating through the
//List object
List<PDFSignatureField> fieldNamesList = fieldNames.getItem();
Iterator<PDFSignatureField> iter = fieldNamesList.iterator();
int i = 0 ;
String fieldName="";
while (iter.hasNext()) {
PDFSignatureField signatureField = (PDFSignatureField)iter.next();
fieldName = signatureField.getName();
System.out.println("The name of the signature field is " +fieldName);
i++;
}
}
catch (Exception ee)
{
ee.printStackTrace();
}
}
}
|
|
|