Okay, I have a big LiveCycle form - weighing in at 680KB with 1500 lines of Javascript. No server involved - this is loading a pdf (XDP format) into Reader on the client.
I'm tracking load timing and it's taking about 29 seconds all in to go from the first time I can measure till form:ready. Breaking that down it seems that the vast majority of the time it's simply doing, well something - who knows for 25 of those 29 seconds. It doesn't seem to be calling any of my code for that period - what is it doing? And how can I speed it up?
Here's a log I create to try and better understand the initialization process. (mm:ss:milli)
- 28:07:350 **First Initialization
- Triggered by an 'initialize' event tied to the first field element that gets called (determined through trial and error)
- For these four seconds I do some initialization and walk the object hierarchy tree*
- 28:11:597 Form initializations starting
- Done with my initial stuff
- For next 25 seconds I have zero, I mean zero initialization calls tied to and objects in the object hierarchy
- What is Reader doing?
- 28:36:531 Form validation occurring
- Just a check to know when the initialization phase is over and validations start occurring
- Turns out this is real quick
- 28:36:575 Form initializations complete
- And ready to run at that point.
Thanks for any and all ideas!!!
Btw, here's a link on which I'm basing my assumptions oh now startup works. LiveCycle ES2 * Adobe LiveCycle Designer ES2
I've googled for help on this -- all I see is a focus on server based configurations.
*A neat trick I haven't seen before. I do a lot of hiding and showing of subforms (e.g., a tab bar, radio button sensitive showing of subforms, etc.) but want to keep validation working. Turns out that a field in a hidden subform that is mandatory for validation will still be triggered. So you have to turn off that validation check when you hide a field. More work, but the default validation works.