Scenario: Previewing and Reloading a Correspondence

When creating a correspondence, you can submit the correspondence, while in an interim state, before finalizing it. The following scenario describes how to preview an inactive version of an asset, or reconstitute the state of a submitted correspondence using Create Correspondence user interface.

Implementation overview

For instruction on how to use the Create Correspondence user interface to create or modify a correspondence see Using the solution template.

First design a post process using Adobe LiveCycle Workbench, that stores the XML data submitted using the Create Correspondence user interface. This process is called each time the correspondence is submitted using the Create Correspondence user interface. The Create Correspondence user interface only provides a submit operation using the Submit button, it does not provide a save operation. Therefore, a custom post process is required to differentiate between a submit for processing (final submit) versus submit for save (to allow reloading).

cmData, cmDataUrl, and cmAppName

To reload the correspondence, load the Correspondence Management application using the cmData or cmDataUrl parameter and feed the XML data from the previous submit. When using the cmData parameter, the XML data is provided inline in the URL. For example:

http://[server]:[port]/cmsa/dc?cmData=<XML data>
Depending on the size of the XML data, you can use the cmDataUrl parameter to provide the XML from a source file using basic protocols such as ftp, http, or file. For example:
http://[server]:[port]/cmsa/dc?cmDataUrl=file:///C:/temp/data.xml
Important: When you specify a file or http path for the cmDataUrl parameter, you need to URL encode the path. For example, you need to URL encode http path http://<server>:<port>/cmsa/CustomDataUrl?ssn=1234 to http%3a%2f%2f<server>%3a<port>%2fcmsa%2fCustomDataUrl%3fssn%3d1234.
Note: You do not have to specify the cmLetterId or cmLetterName/State/Version when reloading a correspondence, since the submitted data contains the ID of the correspondence that is reloaded. If cmLetterId or cmLetterName/State/Version are specified, the loaded correspondence object's ID must match the ID specified in the given XML data.

The cmAppName needs to be specified in the url for the Correspondence Management department for which we are reloading the letter. For example:

http://[server]:[port]/cmsa/dc?cmAppName=<CM App name>

Troubleshooting

If an error occurs during reload, the Flash Log (flashlog.txt) is enabled (which requires a Flash debugger configured to output Flash log data). The Debug Log Window (which can be accessed by pressing Ctrl + Alt + D) contains more information. The error is either syntactical, having to do with the syntax of the ICC Control Data itself, or logical, having to do with the contents of the ICC Control Data, where the ICC Control Data is the <icc:icc> element found in the submitted letter data. Check the server logs (server.log) and the solution logs (correspondencemanagement.log) to see if there was a server-side error while reloading or rendering the correspondence.

// Ethnio survey code removed