On 26 January 2017 13:53:22 GMT+00:00, Konstantin Kolinko <knst.koli...@gmail.com> wrote: >2017-01-26 16:00 GMT+03:00 Rémy Maucherat <r...@apache.org>: >> 2017-01-26 12:10 GMT+01:00 Mark Thomas <ma...@apache.org>: >> >>> - One TCK test fails because an associated JSP no longer compiles >>> because it reaches the 64k method limit. The JSP has a very large >>> number of nested tags. >>> >>> I'm going to take another look at the JSP Generation to see if there >is >>> anything we can do to make even a small improvement. >>> >>> :( It could be an option to simply revert the try/finally change in >all >> branches except 8.5 and 9, after all nobody complained about it. > >1. I think that try/finally change fixed a real bug. It is better to >keep it. > > >2. Looking at java code generated for JSPs by 6.0.50, the additional >code is in helper methods ("_jspx_meth_"*), not in the main big >_jspService() method.
If you use tags with bodies that contain scriptlets then the code appears in the main service method. >There is not much of that additional code. Just a try/catch and a >boolean variable. >So I also do not see what can be improved. > >A "catch (Throwable t)" block at the end of _jspService() could be >extracted into a helper method as non-trivial code, but it is only a >dozen of lines and it is present only once. We might be able to save a few bytes with some helper methods but it won't be much, if any. >It needs some actual numbers - how big of a JSP can be compiled by >Tomcat. It took around 250 tags with a scriplet on a single page to trigger the problem. I need to test how much difference the try/finally fix made. >3. There are some Jasper options that produce a more compact java >code. Especially the option to generates a single out.write() call for >a sequence of text instead of separate call for each line of text. A >bugzilla report mentions it. > > <init-param> > <param-name>mappedfile</param-name> > <param-value>false</param-value> > </init-param> > >http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html > >I wonder whether the mentioned TCK test will pass with that option. I'll take a look. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org