Expand my Community achievements bar.

Learn about Edge Delivery Services in upcoming GEM session
SOLVED

XFA Rendered as HTML - Designer Scripting Affect on Server Performance

Avatar

Level 2

I am working on a project where AEM Server (6.5) is used to render XFA forms as HTML.  There is a list of form links on the website.  The user clicks the XFA form link, the form is rendered as HTML, and then the user then has an option to click a button which will generate a flattened PDF including their typed in data.  The intent is for large scale use of this. 

 

We need to make a decision on how much forms scripting to use in the XFA forms.  The forms scripting will be Client scripts.  Even though these are Client scripts, there is a concern that the forms scripting will slow AEM server performance - this could be from the server processing that occurs when the link is clicked and/or the server processing from clicking the button to generate a flattened PDF.

 

Is this a valid concern - that scripting in the forms will affect Server performance - given there will be a lot of users?  I did not develop the web application - I am focusing on the forms - and need help understanding this.  Thank you.  

1 Accepted Solution

Avatar

Correct answer by
Level 2

I communicated with Adobe on this topic and have enough information to provide a correct answer.  I summarize below the information I was given:

-This is a subjective topic that depends on the build.

-Server resources are used during the rendering of the HTML form.  the AEM Server performs the rendering an XFA form as HTML, and the "heavier" the form, the more resources are used. By "heavier", we mean the number of pages, fields, objects, borders, interface validation, scripts (as well as size of scripts)… - everything in the form - the more of that stuff in the form, the heavier. One of the biggest drain in resources is the number of pages in a form because the HTML does not have pages and the HTML "conversion" occurs page by page. The number and length of scripts would have an impact, but we do not know what that is until we test. Note that there are several other things (other than the form design) that impact the time to generate forms.

-Below is a good Adobe article on this topic:

https://experienceleague.adobe.com/docs/experience-manager-65/forms/html5-forms/best-practices-for-h...

-Once the form is rendered, if "Run at Client" is selected with a form script, the script will execute on the user computer and the AEM server will not be impacted (unless the script specifically calls for interaction with the server).

View solution in original post

2 Replies

Avatar

Employee Advisor

@AndrewKeys123  I think this is logged in the support ticket as well. 

Avatar

Correct answer by
Level 2

I communicated with Adobe on this topic and have enough information to provide a correct answer.  I summarize below the information I was given:

-This is a subjective topic that depends on the build.

-Server resources are used during the rendering of the HTML form.  the AEM Server performs the rendering an XFA form as HTML, and the "heavier" the form, the more resources are used. By "heavier", we mean the number of pages, fields, objects, borders, interface validation, scripts (as well as size of scripts)… - everything in the form - the more of that stuff in the form, the heavier. One of the biggest drain in resources is the number of pages in a form because the HTML does not have pages and the HTML "conversion" occurs page by page. The number and length of scripts would have an impact, but we do not know what that is until we test. Note that there are several other things (other than the form design) that impact the time to generate forms.

-Below is a good Adobe article on this topic:

https://experienceleague.adobe.com/docs/experience-manager-65/forms/html5-forms/best-practices-for-h...

-Once the form is rendered, if "Run at Client" is selected with a form script, the script will execute on the user computer and the AEM server will not be impacted (unless the script specifically calls for interaction with the server).