You can assemble a non-interactive PDF document when using
an interactive PDF form as input. That is, assume that you have
a form that users can use to enter data into its fields. You can
pass that form to the Assembler service, resulting in the Assembler
service returning a PDF document that prevents users from entering
data into its fields. This document is a non-interactive PDF form. For
example, the following illustration shows a mortgage application
that represents an interactive form.
For the purpose of this discussion, assume that the following
DDX document is used.
<?xml version="1.0" encoding="UTF-8"?>
<DDX xmlns="http://ns.adobe.com/DDX/1.0/">
<PDF result="out.pdf">
<PDF source="inDoc"/>
<NoXFA/>
</PDF>
</DDX>
Within this DDX document, notice that the source attribute is
assigned the value
inDoc
. In situations where only
one input PDF document is passed to the Assembler service and one
PDF document is returned, and you invoke the
invokeOneDocument
operation, assign
the value
inDoc
to the PDF source attribute. When invoking
the
invokeOneDocument
operation, the
inDoc
value
is a predefined key that must be specified in the DDX document.
In contrast, when passing two or more input PDF documents to
the Assembler service, you can invoke the
invokeDDX
operation.
In this situation, assign the file name of the input PDF document
to the
source
attribute.
This DDX document contains the
NoXFA
element, which
instructs the Assembler service to return a non-interactive PDF document.
The Assembler service can assemble non-interactive PDF documents without
the Output service being part of your AEM forms installation
if the input PDF document is based on an Acrobat form or a static
XFA form. However, if the input PDF document is a dynamic XFA form,
the Output service must be part of your AEM forms installation.
If the Output service is not part of your AEM forms installation
when a dynamic XFA form is assembled, an exception is thrown. See
Creating Document Output Streams
.

Before reading this section, it is recommended
that you be familiar with assembling PDF documents using the Assembler
service. This section does not discuss concepts, such as creating
a collection object that contains input documents or learning how
to extract the results from the returned collection object. (See
Programmatically Assembling PDF Documents
.)