When you use the renderPDFFormWithUsageRights() method to render and reader-extend PDF documents, there are issues with the locale on the resulting PDF form.
For example, if you use this method to render XDP documents with German locale settings, then those settings are lost. Numeric fields are rendered using the default English locale. If you enter 4555 in a decimal field, it is displayed with the English locale 4,555.00, rather than 4.555,00 in the German locale.
In LiveCycle ES2 (188.8.131.52), specify the default locale in the AdminUI under the Forms service Internationalization settings to handle all cases for your default language. For XDP templates that deviate from your default language, specify the language on the field/subform level in the XDP, or in the PDFRenderFormSpec setLocale() method. These settings will then override the default locale.
There are a few ways to define the locale for a form rendered through the Forms service in ES2.
- XDP form-level
- XDP field/subform level
The default locale for rendered forms is configured in the AdminUI under Home > Services > LiveCycle Forms ES2 > Internationalization. If no locale is specified in the PDFRenderFormSpec in the API or render call, then the form is rendered in the default English locale.
Similarly, you can specify a default locale in the XDP form template with LiveCycle Designer. You can also specify the locale on a field/subform level within the XDP template by using “default” (which inherits the form-level locale). You can also explicitly define the locale in the field/subform properties.
LiveCycle ES2 (184.108.40.206) ignores the form-level locale and respects the locale hierarchy as follows: field/subform, then PDFRenderFormSpec, then AdminUI. This means that a locale (locale 1) specified on the field/subform level will override any different locales (locale 2) specified in the PDFRenderFormSpec and AdminUI. The individual field/subform will then be rendered in the final PDF with locale 1, and the rest of the form with locale 2. It is a product bug that the form-level locale is ignored.
In LiveCycle ES2 SP2 and later versions, Adobe has added add an “Auto” value to the PDFRenderFormSpec setLocale() method, which respects the XDP form-level locale. Then, the locale hierarchy is as follows: field/subform, then form-level, then PDFRenderFormSpec, then AdminUI.