Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.

Is there no supporting documentation for the Services shipped with Workbench? (generatePDFOutput in

Avatar

Former Community Member
I'm trying to build a process that saves a form (as completed by a user) to the server's file system. The generatePDFOutput Service isn't working (runs forever) and the help pages do nothing much more than list the property fields names. Surely it isn't uncommon to want to save a copy of the form before or when the process completes?



Any and all help is welcome!
21 Replies

Avatar

Level 10
You can use the Write operations from the File Utilities service (under Foundation)to write things to the file system.



Jasmin

Avatar

Former Community Member
Thank you Jasmin. I have looked at the File Utilities but it appears that I first need to merge the user's data into the form and store it in variable of type 'document'. I can then pass the variable as input to the Write Document service. Using generatePDFOutput to create the document variable doesn't seem to work.



Any examples or documentation links would be greatly appreciated.



John

Avatar

Level 10
I don't have time to find the doc, but ultimately, generatePDFOutput has three main property.



Form: This is URL to the form template. If you use the repository, then it'll be somtehign like /myFolfer/MyForm.xdp



Content Root: This is where the xdp are stored. If you use the built-in repository then you put repository://



Data: If you need to merge data with the form.



JAsmi

Avatar

Former Community Member
I guess it's safe to say that there is no useful documentation? Adobe support (Platinum) has yet to come up with anything...

Avatar

Level 10
John,

There's plenty of documentation available out there.



Did you try to read the documents at http://www.adobe.com/support/documentation/en/livecycle/



The LiveDocs contain a bunch on information that couls be useful. See http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/help/wwhelp/wwhimpl/js/html/wwhelp.htm?...



Also for the services in Workbench you can do a search in the Workbech help. This is what you would find for generatePDFOutput:



Generates a PDF or a PDF/A output stream given a form design and data to merge with the form design.



For information about the General and Route Evaluation property groups, see Common operation properties.



Input

Properties to specify a form design, data, and PDF options.



Transformation Format

A TransformationFormat value that specifies the format to which the document is transformed. Valid string values are PDF and PDFA. The default is PDF.



Form

A string value that represents the name of the form design used to generate an output stream. There is no default.



Content Root

A string value that represents the root for the form design and its collateral files. There is no default.



PDF Output Options

(Optional) A PDFOutputOptionsSpec object that contains run-time values that the Output service uses.



If you provide a literal value, you must specify the following groups of properties.



General



XCI URI: A string value that specifies the XCI file to use. There is no default.



Character Set: A string value that represents the character set used to encode the output byte stream. There is no default.



Locale: A string value that represents the locale to use. There is no default.



Batch



Record Name: A string value that represents the element name that identifies the beginning of a batch of records. There is no default.



Record Level: An integer value that represents the XML element level that contains the record data. The default is 1.



Generate Multiple Streams: A boolean value that specifies whether the operation creates a single output stream or multiple output streams. A value of True indicates that the operation creates multiple output streams. A default of False indicates that the operation is limited to a single output stream.



Rules



Pattern Match Size: An integer value that represents the number of bytes to use from the beginning of the input data file to scan for the pattern strings. The default is 500. For information about working with search rules, see Designing Forms for Output ES.



Pattern Matching Rules: A list of search rules that scan the input data file for a pattern and associates the data with a specific form design. There are no defaults. For information about working with search rules, Designing Forms for Output ES.



Destination



Output Location URI: A string value that represents the URI of the file and path to save the output file to. There is no default.



Printer Name: A string value that represents the name of the printer. The LiveCycle ES server must access to the specified printer. There is no default.



LPD URI: A string value that represents the URI of the Line Printer Daemon (LPD) to use when the network has an LP daemon running. There is no default.



LPD Printer Name: A string value that represents the name of the printer on the specified Line Printer Daemon (LPD) URI when the network has an LP daemon running. There is no default.



MetaData



Meta Data Spec File: A string value that represents the URI of the meta data spec file. This value is used to generate metadata. There is no default.



Record ID XPath: A string value that represents the XPath expression value of the node that contains the record identifier. There is no default.



Generate Record Level Meta Data: A boolean value that specifies whether the meta data file for each record is generated. The default is False.



Render Options

(Optional) A RenderOptionsSpec-OutputService value that specifies how the output is rendered. The render options that you see if you provide a literal value depend on the value selected for the Transformation Format property.



When you select a value of PDF for the Transformation Format property, the following render options are available.

PDF Version: The PDF version produced by the service. Valid values are 1.5, 1.6, 1.7, and Auto. There is no default.



Acrobat Version: Select a value to specify the Acrobat version that is required to view the PDF form that is rendered. The following values are supported:



Acrobat and Adobe Reader 6 or later: The client must have Acrobat 6 or later.



Acrobat and Adobe Reader 7.0 or later: The client must have Acrobat 7 or later.



Acrobat and Adobe Reader 7.0.5 or later: The client must have Acrobat 7.0.5 or later.



Acrobat and Adobe Reader 8 or later: The client must have Acrobat 8.0 or later.



Acrobat and Adobe Reader 8.1 or later: The client must have Acrobat 8.1 or later.



Acrobat and Adobe Reader 9 or later: The client must have Acrobat 9.0 or later.



Auto: The Forms service determines version to use.



Tagged PDF: A boolean value that specifies whether the operation produces a tagged PDF. This value is not valid for PDF/A output because PDF/A 1A is always tagged and PDF/A 1B is never tagged. The default is False.



Linearized PDF: A boolean value that specifies whether the operation produces a PDF optimized for for fast viewing in a web browser. The default is False.



Render At Client: Enables the delivery of PDF content by using the client-side rendering capability of Acrobat 7.0 or later. Valid values are Auto, Yes, and No.



Debug Enabled: A boolean value that specifies whether the Debug Enabled option is enabled.



When you select a value of PDF/A for the Transformation Format property, the following render options are available.

Linearized PDF: A boolean value that specifies whether the operation produces a PDF optimized for for fast viewing in a web browser. The default is False.



Debug Enabled: A boolean value that specifies whether the debugging is enabled. The default is False.



PDF/A Revision Number: A string value that represents the PDF/A revision number. The default is Revision_1.



PDF/A Conformance: A string value that specifies the conformance level with the PDF/A-1 specification to use. Valid values are A and B. The default is A.



Input Data

(Optional) A document value that represents the data to be merged with the form design.



If you provide a literal value, clicking the ellipsis button opens the Open dialog box, in which you can select a file from a local computer or network location.



Output

Properties to specify where to store the results of the operation.



PDF Output

The location to store the PDF output. The data type is document.



Meta Data Document

The location to store the metadata. The data type is document.



Status Document

The location to store the status result of the operation. The data type is document.



Output Result

The location to store the results of the operation. The data type is OutputResult.

Avatar

Former Community Member
Yes, thank you - but when you think you've entered valid parameters and the component doesn't work (runs endlessly until forced to terminate), how do you figure out where the problem is? Some simple supporting examples that are known to work would allow us to verify that the component isn't broken and that we're simply doing something wrong. To date, I see no evidence that anyone has successfully used generatePDFOutput. Adobe support certainly hasn't suggested they have...

Avatar

Level 10
OK,

I'll get you going.



Tell me the settings you're using and the error you're getting. There must be something in the log from the application server if there is an error.



The record and playback feature might also be useful to track the exception.



Let me know,



Jasmin

Avatar

Former Community Member
Thanks for the offer Jasmin. The problem is that generatePDFOutput runs with my parameters but never completes. It doesn't stall or error out...



I'll examine the logs again but I'm pretty sure nothing gets reported. Adminui shows me that the process is "running" and that's where it stays until I force it to terminate.

Avatar

Level 10
Does it create an output? It shouldn't just run without completing.



Still let me know your parameters. Maybe I'll see something.



Jasmin

Avatar

Former Community Member
I've indicated the following:



Input:

Transformation Format: PDFA

Form: myFormName.pdf

Content Root: repository///myCategory/myDirectory/

Input Data: a variable of xfaForm type (with the user's data)



Output:

PDF Output: a variable name of 'document' type

Output Result: a variable of 'OutputResult' type



-John

Avatar

Level 10
A few things:



Content Root should be repository:///myCategory/myDirectory/ (see the ':' in the url).



Input data should refer to xml data. If you use a xfaForm variable, you would need to get down to the data node. Something like xfaFormVar/object/data/xdp/datasets/data. I would remove that parameter just to debug and get it going since it's optional.



If you're just interested in the resulted PDF, you don't need a OuputResult object.



Jasmin

Avatar

Former Community Member
Specifying the data node has enabled the operation to complete.



Specifying a path in the Output Location URI does nothing. Passing the document variable to "Write Document" results in this error being reported:



/myDir/test.pdf cannot be stored for action instance: 18105: com.adobe.workflow.WorkflowRuntimeException

Avatar

Former Community Member
I have found this error being reported:



The prefix "xfa" for element "xfa:data" is not bound.

Avatar

Level 10
I'm not sure where you get the Output Location URI from. Just set the PDF Result to a 'document' variable.



Use that document variable with the WriteDocument operation from File Utils.



Take the data parameter out for now to see if it generates the PDF properly. We'll put it back once you get a document written to the file system. Try to put the Pathname pattern to c:\test.pdf.



Jasmin

Avatar

Former Community Member
Removing the data parameter didn't help. The PDF Output parameter was set to my document variable.



The path is to a directory with wide-open read-write permissions (our server runs Linux not Windows)...



Tests of the Output Result parameter have produced files in the output directory successfully. They haven't contained any useful information, however.



I've just now discovered that the 'LiveCycle Output ES' link under 'Services' in the Admin UI causes a java exception to be thrown:



Missing message for key "$$$.outputConfig.baseUrlHelp"



Perhaps there is a bigger problem than just the generatePDFOuput component...

Avatar

Level 10
Have you tried to use the Record and Playback feature to see where it fails in your process?



You can right click on the process and start the recording. Then invoke your process and then play that recording. This will allow you to see the value of your variables at every step and also will tell you exactly where it fails (and the error).



Jasmin

Avatar

Former Community Member
The recording doesn't give me anything useful. The generatePDFOutput activity turns green. The play button does nothing and the variables remain empty. When the process is invoked, it returns a job-id number.

Avatar

Level 10
Play the recording and stop it on the generatePDFOutput. At this point check the value of the output document.



If you let it run until the end, the variables get cleared.



You should also make you process shorted lived and mark your document variable as output. That way it'll get returned when you invoke (for testing purpose).



Jasmin

Avatar

Former Community Member
Unfortunately it starts on generatePDFOutput and doesn't continue. The document variable is marked as output and the process is short lived.



I appreciate your efforts. This thread could have been avoided if Adobe simply provided a working example so we could determine if the back-end of all this is working before trying to troubleshoot the front-end...



My case is still open with Adobe but long forgotten it appears...



John

Avatar

Level 10
Ok. One last try.



Can you export your process (LCA) and the form your using and send it to me at livecycle8@gmail.com?



I'll look into it.



Jasmin