Support Article

Size limitation error while saving section rule

SA-2047

Summary



Unable to open a work object because of an error in a section referred in harness. In tracer, the error shown is 'The code of method execute() is exceeding the 65535 bytes limit'.

Error Messages



Failed to compile generated Java com.pegarules.generated.html_section.ra_stream_teleunderwritingdetails_noinput_7bb9ceb9654db222152d6bfaf9e8f436: ----------
1. ERROR in com/pegarules/generated/html_section/ra_stream_teleunderwritingdetails_noinput_7bb9ceb9654db222152d6bfaf9e8f436.java (at line 70)
public void execute() {
^^^^^^^^^
The code of method execute() is exceeding the 65535 bytes limit
----------
1 problem (1 error)


Steps to Reproduce



A section is configured containing  many other sections. On adding more section(s) to this rule, this error is observed.

Root Cause



The root cause of this problem is due to a limitation on Java and JSP 64K limit for methods. Please see the below PDN article mentioning the same:


https://pdn.pega.com/performance/issue-java-64k-method-size-limit

Prior to PRPC 7.1, most of the section content used to reside in a single execute() method due to JSP based generation.

In PRPC 7.1 we have converted the generation from JSP to Java methods so that users will never encounter this issue however big is the section.

Resolution



To add more layouts in the present section, developers can first save the layout as another section and then do a section include of it in the current section.

 
Additionally, developers can try to create a new wrapper section, put the current section inside that and then add the new layout/section that they want to embed.

Published January 31, 2016 - Updated October 8, 2020

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.