Quick Start (SwaRef): Transforming a PDF document using the web service API

The following Java code example transforms an interactive PDF document named Loan.pdf into a non-interactive PDF document namedNonInteractiveLoan.pdf. (See Flattening PDF Documents.)

    * Ensure that you create Java proxy files that consume 
    * the Output services  WSDL. You can use JAX-WS to create 
    * the proxy Java files.   
    * For information, see "Invoking LiveCycle using SwaRef" in Programming with LiveCycle 
import java.io.*; 
import javax.activation.DataHandler; 
import javax.activation.FileDataSource; 
import javax.xml.ws.BindingProvider; 
import com.adobe.idp.services.*; 
public class TransformPDFSwaRef { 
    public static void main(String[] args) { 
        // Setting configurations to retrieve the Web service 
        String url = "http://hiro-xp:8080/soap/services/OutputService?blob=swaref"; 
        String username = "administrator"; 
        String password = "password"; 
        // Create the service Client objects needed 
        OutputServiceService outService = new OutputServiceService(); 
        OutputService outClient = outService.getOutputService(); 
        //Set authentication values  
        ((BindingProvider) outClient).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url); 
        ((BindingProvider) outClient).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, username); 
        ((BindingProvider) outClient).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, password); 
        //Create a BLOB object to store form data     
        String path = "C:\\Adobe\Loan.pdf"; 
        FileDataSource ds = new FileDataSource(path);  
        DataHandler handler = new DataHandler(ds); 
        BLOB inDoc = new BLOB(); 
        //Flatten the PDF document         
        BLOB outDoc = outClient.transformPDF( 
        //Save the non-interactive PDF document 
        DataHandler handler3 = outDoc.getSwaRef(); 
           //Create a new file containing the returned PDF document 
        File f = new File("C:\\Adobe\NonInteractiveLoan.pdf"); 
        InputStream inputStream = handler3.getInputStream(); 
        OutputStream out = new FileOutputStream(f); 
        //Iterate through the buffer 
        byte buf[] = new byte[1024]; 
        int len; 
        while ((len = inputStream.read(buf)) > 0) 
            out.write(buf, 0, len); 
    }catch (Exception ee) 

// Ethnio survey code removed