Return-Path: Delivered-To: apmail-tomcat-users-archive@www.apache.org Received: (qmail 31100 invoked from network); 21 Sep 2007 01:41:24 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 Sep 2007 01:41:23 -0000 Received: (qmail 68629 invoked by uid 500); 21 Sep 2007 01:41:02 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 68601 invoked by uid 500); 21 Sep 2007 01:41:02 -0000 Mailing-List: contact users-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Users List" Delivered-To: mailing list users@tomcat.apache.org Received: (qmail 68590 invoked by uid 99); 21 Sep 2007 01:41:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 20 Sep 2007 18:41:02 -0700 X-ASF-Spam-Status: No, hits=-2.8 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [128.222.32.20] (HELO mexforward.lss.emc.com) (128.222.32.20) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Sep 2007 01:43:03 +0000 Received: from mailhub.lss.emc.com (sesha.lss.emc.com [10.254.144.12]) by mexforward.lss.emc.com (Switch-3.2.5/Switch-3.1.7) with ESMTP id l8L1ecpE009669 for ; Thu, 20 Sep 2007 21:40:38 -0400 (EDT) Received: from sdtihq24.securid.com (sdtihq24.na.rsa.net [10.100.8.152]) by mailhub.lss.emc.com (Switch-3.2.5/Switch-3.1.7) with ESMTP id l8L1eWYV011197 for ; Thu, 20 Sep 2007 21:40:33 -0400 (EDT) Received: from rsana-ex-hq1.NA.RSA.NET (rsana-ex-hq1.na.rsa.net [10.100.8.50]) by sdtihq24.securid.com (8.12.10/8.12.9) with ESMTP id l8L1eWuS009453 for ; Thu, 20 Sep 2007 21:40:32 -0400 (EDT) Received: from rsaap-ex-au1.AP.RSA.NET ([10.177.1.170]) by rsana-ex-hq1.NA.RSA.NET with Microsoft SMTPSVC(6.0.3790.211); Thu, 20 Sep 2007 21:33:52 -0400 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: quoted-printable Subject: Jasper/Tomcat custom .tag processing extremely slow if in .jars -- profiling results Date: Fri, 21 Sep 2007 11:33:41 +1000 Message-ID: <5C31CE81AAE94248B363EC08539DA92504DBB9AD@rsaap-ex-au1.AP.RSA.NET> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Jasper/Tomcat custom .tag processing extremely slow if in .jars -- profiling results Thread-Index: Acf773EdWJnz6LWlQHqzS6hZ2YpR6Q== From: "Berglas, Anthony" To: X-OriginalArrivalTime: 21 Sep 2007 01:33:52.0336 (UTC) FILETIME=[77768500:01C7FBEF] X-PMX-Version: 4.7.1.128075, Antispam-Engine: 2.5.1.298604, Antispam-Data: 2007.8.30.53115 X-PerlMx-Spam: Gauge=, SPAM=8%, Reasons='__LINES_OF_YELLING! 0.25, __CP_URI_IN_BODY 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __IMS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0' X-Virus-Checked: Checked by ClamAV on apache.org PROBLEM JSPs that make use of custom .tag files can be very slow to compile -- several tens of seconds for each .jsp. It takes longer to compile a single .jsp than the entire Tomcat 6 & Jasper source. =20 Our application uses .tag files fairly heavily to provide boiler plate text for headings, menus, buttons, input fields etc. Works fairly well apart from the painfully slow compiles. PROFILING AND TRACING RESULTS 1. Tomcat is recompiling all the .tags for each .jsp. So the .tag libraries are being needlessly recompiled many, many times. (Ie. if foo.jsp calls bar.tag once, and then baz.jsp calls bar.tag three times, then bar.tag is compiled twice, not once or four times.) 2. The javac compiles are very slow, despite there being relatively little java code to compile. (About 60% of total time.) This is probably because the compiler is being invoked once for each .tag, rather than just once for all the generated .java files. 3. The parsing is relatively slow (20% of total time) but not the bottleneck. Other aspects such as generating the .java are very fast. FIXES AND WORK AROUNDS The first recompiling problem only presents when the .tag files are bundled in a .jar. We want to separate the .tag library from the application, and we get better IDE support from a .jar with a .tld. =20 One approach is to just fix Jasper to look at the .jar time for dependency checking. But this is only useful if the fix would be back ported to the main tree. Another is to unbundled the .tag files, and use more complex build scripts to merge the library with the application. Would prefer not to do that. For the compiles it should be possible to have Jasper pre-generate .java files in one pass, and then compile explicitly in another. =20 However there is a bug in Jasper that prevents pre-compilation of .tags that call other .tags that also need to be compiled. Apparently one needs to write a dummy .jsp that calls the leaf .tags one at a time to prevent this. (Or fix Jasper.) Also, prefer not to do things that are Tomcat specific, want a portable war file at the end of the day. TRACE I have attached the trace of a run. The page is a simple form with 8 fields. Times in milli seconds from the beginning of the run. The list is indented per the call stack. generateClass is the method that calls the Javac compiler, and totals of this are collected at the end. The recursion is due to .tags calling .tags. I can provide people with the traced copy of Jasper source if they are interested to see exactly what the traces mean. First time, Plain format http://localhost:8080/plain_eg/swb/Simple/WAutoCrudPage.swb =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D WPageStructure = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 1=3D=3D -- Parameters: Submit Button: null 1=3D=3D id =3D null 1=3D=3D name =3D null 1=3D=3D database =3D null 1=3D=3D color =3D null 1=3D=3D alignment =3D null 1=3D=3D happy =3D null 1=3D=3D count =3D null 1=3D=3D datefield =3D null 1=3D=3D >>>>>>>>>>>>>> {WAutoCrudPage WAutoCrudPage} null 1=3D=3D Pagelet {WPagelet crud} 1=3D=3D Field Group {WFieldGroup crud.userIdentity} 1=3D=3D Field {WFieldString crud.id =3D null} 1=3D=3D Field {WFieldString crud.name =3D null} 1=3D=3D Field {WFieldString crud.database =3D Mock Database} 1=3D=3D Field Group {WFieldGroup crud.userDetails} 1=3D=3D Field {WFieldString crud.color =3D null} 1=3D=3D Field {WFieldString crud.alignment =3D null} 1=3D=3D Field {WFieldString crud.happy =3D null} 1=3D=3D Field {WFieldInteger crud.count =3D null} 1=3D=3D Field {WFieldDate crud.datefield =3D null} 1=3D=3D <<<<<<<<<<<<<< {WAutoCrudPage WAutoCrudPage} 47 | >> 0 generateJava | 1109 generateJava paresed & validated \WAutoCrudPage_jsp.java | | >> 1109 Visiting tag /META-INF/tags/simplewebplain/page.tag | | 1109 loadTagFile CompCtx /META-INF/tags/simplewebplain/page.tag | | | >> 1109 loadTagFile /META-INF/tags/simplewebplain/page.tag | | | | >> 1109 wrapper.loadTagFile | | | | | >> 1125 generateJava | | | | | 1468 generateJava paresed & validated \page_tag.java | | | | | | >> 1468 Visiting tag /WEB-INF/tags/headingCell.tag | | | | | | 1468 loadTagFile CompCtx /WEB-INF/tags/headingCell.tag | | | | | | | >> 1468 loadTagFile /WEB-INF/tags/headingCell.tag | | | | | | | | >> 1468 wrapper.loadTagFile | | | | | | | | | >> 1468 generateJava | | | | | | | | | 1500 generateJava paresed & validated \headingCell_tag.java | | | | | | | | | 1515 generateJava tag file processed \headingCell_tag.java | | | | | | | | | << 1640 172 generateJava generated \headingCell_tag.java | | | | | | | | | >> 1656 generateClass in compile | | | | | | | | | << 3328 1672 generateClass in compile | | | | | | | | 3328 wrapper.loadTagFile compiled, loading... | | | | | | | | << 3343 1875 wrapper.loadTagFile | | | | | | | << 3359 1891 loadTagFile /WEB-INF/tags/headingCell.tag | | | | | | << 3359 1891 Visited tag /WEB-INF/tags/headingCell.tag | | | | | | >> 3359 Visiting tag /META-INF/tags/simplewebplain/menu.tag | | | | | | 3359 loadTagFile CompCtx /META-INF/tags/simplewebplain/menu.tag | | | | | | | >> 3359 loadTagFile /META-INF/tags/simplewebplain/menu.tag | | | | | | | | >> 3359 wrapper.loadTagFile | | | | | | | | | >> 3375 generateJava | | | | | | | | | 3578 generateJava paresed & validated \menu_tag.java | | | | | | | | | 3593 generateJava tag file processed \menu_tag.java | | | | | | | | | << 3671 296 generateJava generated \menu_tag.java | | | | | | | | | >> 3671 generateClass in compile | | | | | | | | | << 4093 422 generateClass in compile | | | | | | | | 4093 wrapper.loadTagFile compiled, loading... | | | | | | | | << 4093 734 wrapper.loadTagFile | | | | | | | << 4109 750 loadTagFile /META-INF/tags/simplewebplain/menu.tag | | | | | | << 4109 750 Visited tag /META-INF/tags/simplewebplain/menu.tag | | | | | | >> 4109 Visiting tag /META-INF/tags/simplewebplain/errorMessages.tag | | | | | | 4109 loadTagFile CompCtx /META-INF/tags/simplewebplain/errorMessages.tag | | | | | | | >> 4109 loadTagFile /META-INF/tags/simplewebplain/errorMessages.tag | | | | | | | | >> 4109 wrapper.loadTagFile | | | | | | | | | >> 4109 generateJava | | | | | | | | | 4312 generateJava paresed & validated \errorMessages_tag.java | | | | | | | | | 4312 generateJava tag file processed \errorMessages_tag.java | | | | | | | | | << 4343 234 generateJava generated \errorMessages_tag.java | | | | | | | | | >> 4343 generateClass in compile | | | | | | | | | << 4843 500 generateClass in compile | | | | | | | | 4843 wrapper.loadTagFile compiled, loading... | | | | | | | | << 4843 734 wrapper.loadTagFile | | | | | | | << 4859 750 loadTagFile /META-INF/tags/simplewebplain/errorMessages.tag | | | | | | << 4859 750 Visited tag /META-INF/tags/simplewebplain/errorMessages.tag | | | | | 4859 generateJava tag file processed \page_tag.java | | | | | << 4906 3781 generateJava generated \page_tag.java | | | | | >> 4906 generateClass in compile | | | | | << 5281 375 generateClass in compile | | | | 5281 wrapper.loadTagFile compiled, loading... | | | | << 5296 4187 wrapper.loadTagFile | | | << 5296 4187 loadTagFile /META-INF/tags/simplewebplain/page.tag | | << 5296 4187 Visited tag /META-INF/tags/simplewebplain/page.tag | | >> 5296 Visiting tag /META-INF/tags/simplewebplain/autoCrud.tag | | 5296 loadTagFile CompCtx /META-INF/tags/simplewebplain/autoCrud.tag | | | >> 5296 loadTagFile /META-INF/tags/simplewebplain/autoCrud.tag | | | | >> 5296 wrapper.loadTagFile | | | | | >> 5312 generateJava | | | | | 5468 generateJava paresed & validated \autoCrud_tag.java | | | | | | >> 5468 Visiting tag /META-INF/tags/simplewebplain/form.tag | | | | | | 5468 loadTagFile CompCtx /META-INF/tags/simplewebplain/form.tag | | | | | | | >> 5468 loadTagFile /META-INF/tags/simplewebplain/form.tag | | | | | | | | >> 5484 wrapper.loadTagFile | | | | | | | | | >> 5484 generateJava | | | | | | | | | 5578 generateJava paresed & validated \form_tag.java | | | | | | | | | | >> 5578 Visiting tag /META-INF/tags/simplewebplain/form-begin.tag | | | | | | | | | | 5578 loadTagFile CompCtx /META-INF/tags/simplewebplain/form-begin.tag | | | | | | | | | | | >> 5578 loadTagFile /META-INF/tags/simplewebplain/form-begin.tag | | | | | | | | | | | | >> 5578 wrapper.loadTagFile | | | | | | | | | | | | | >> 5578 generateJava | | | | | | | | | | | | | 5671 generateJava paresed & validated \form_002dbegin_tag.java | | | | | | | | | | | | | 5671 generateJava tag file processed \form_002dbegin_tag.java | | | | | | | | | | | | | << 5687 109 generateJava generated \form_002dbegin_tag.java | | | | | | | | | | | | | >> 5687 generateClass in compile | | | | | | | | | | | | | << 5890 203 generateClass in compile | | | | | | | | | | | | 5890 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | << 5890 312 wrapper.loadTagFile | | | | | | | | | | | << 5906 328 loadTagFile /META-INF/tags/simplewebplain/form-begin.tag | | | | | | | | | | << 5906 328 Visited tag /META-INF/tags/simplewebplain/form-begin.tag | | | | | | | | | | >> 5906 Visiting tag /META-INF/tags/simplewebplain/form-end.tag | | | | | | | | | | 5906 loadTagFile CompCtx /META-INF/tags/simplewebplain/form-end.tag | | | | | | | | | | | >> 5906 loadTagFile /META-INF/tags/simplewebplain/form-end.tag | | | | | | | | | | | | >> 5906 wrapper.loadTagFile | | | | | | | | | | | | | >> 5906 generateJava | | | | | | | | | | | | | 6062 generateJava paresed & validated \form_002dend_tag.java | | | | | | | | | | | | | 6078 generateJava tag file processed \form_002dend_tag.java | | | | | | | | | | | | | << 6078 172 generateJava generated \form_002dend_tag.java | | | | | | | | | | | | | >> 6078 generateClass in compile | | | | | | | | | | | | | << 6312 234 generateClass in compile | | | | | | | | | | | | 6312 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | << 6312 406 wrapper.loadTagFile | | | | | | | | | | | << 6328 422 loadTagFile /META-INF/tags/simplewebplain/form-end.tag | | | | | | | | | | << 6328 422 Visited tag /META-INF/tags/simplewebplain/form-end.tag | | | | | | | | | 6328 generateJava tag file processed \form_tag.java | | | | | | | | | << 6343 859 generateJava generated \form_tag.java | | | | | | | | | >> 6343 generateClass in compile | | | | | | | | | << 6656 313 generateClass in compile | | | | | | | | 6656 wrapper.loadTagFile compiled, loading... | | | | | | | | << 6671 1187 wrapper.loadTagFile | | | | | | | << 6687 1219 loadTagFile /META-INF/tags/simplewebplain/form.tag | | | | | | << 6687 1219 Visited tag /META-INF/tags/simplewebplain/form.tag | | | | | | >> 6687 Visiting tag /META-INF/tags/simplewebplain/autoCrudGroup.tag | | | | | | 6687 loadTagFile CompCtx /META-INF/tags/simplewebplain/autoCrudGroup.tag | | | | | | | >> 6687 loadTagFile /META-INF/tags/simplewebplain/autoCrudGroup.tag | | | | | | | | >> 6687 wrapper.loadTagFile | | | | | | | | | >> 6687 generateJava | | | | | | | | | 6984 generateJava paresed & validated \autoCrudGroup_tag.java | | | | | | | | | | >> 6984 Visiting tag /META-INF/tags/simplewebplain/field.tag | | | | | | | | | | 6984 loadTagFile CompCtx /META-INF/tags/simplewebplain/field.tag | | | | | | | | | | | >> 6984 loadTagFile /META-INF/tags/simplewebplain/field.tag | | | | | | | | | | | | >> 6984 wrapper.loadTagFile | | | | | | | | | | | | | >> 6984 generateJava | | | | | | | | | | | | | 7124 generateJava paresed & validated \field_tag.java | | | | | | | | | | | | | | >> 7124 Visiting tag /META-INF/tags/simplewebplain/widget.tag | | | | | | | | | | | | | | 7124 loadTagFile CompCtx /META-INF/tags/simplewebplain/widget.tag | | | | | | | | | | | | | | | >> 7124 loadTagFile /META-INF/tags/simplewebplain/widget.tag | | | | | | | | | | | | | | | | >> 7124 wrapper.loadTagFile | | | | | | | | | | | | | | | | | >> 7124 generateJava | | | | | | | | | | | | | | | | | 7281 generateJava paresed & validated \widget_tag.java | | | | | | | | | | | | | | | | | | >> 7281 Visiting tag /META-INF/tags/simplewebplain/selectOptions.tag | | | | | | | | | | | | | | | | | | 7281 loadTagFile CompCtx /META-INF/tags/simplewebplain/selectOptions.tag | | | | | | | | | | | | | | | | | | | >> 7281 loadTagFile /META-INF/tags/simplewebplain/selectOptions.tag | | | | | | | | | | | | | | | | | | | | >> 7281 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | | | >> 7281 generateJava | | | | | | | | | | | | | | | | | | | | | 7328 generateJava paresed & validated \selectOptions_tag.java | | | | | | | | | | | | | | | | | | | | | 7328 generateJava tag file processed \selectOptions_tag.java | | | | | | | | | | | | | | | | | | | | | << 7343 62 generateJava generated \selectOptions_tag.java | | | | | | | | | | | | | | | | | | | | | >> 7343 generateClass in compile | | | | | | | | | | | | | | | | | | | | | << 7703 360 generateClass in compile | | | | | | | | | | | | | | | | | | | | 7703 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | | | | | | | | | << 7718 437 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | << 7734 453 loadTagFile /META-INF/tags/simplewebplain/selectOptions.tag | | | | | | | | | | | | | | | | | | << 7734 453 Visited tag /META-INF/tags/simplewebplain/selectOptions.tag | | | | | | | | | | | | | | | | | | >> 7734 Visiting tag /META-INF/tags/simplewebplain/radioButtons.tag | | | | | | | | | | | | | | | | | | 7734 loadTagFile CompCtx /META-INF/tags/simplewebplain/radioButtons.tag | | | | | | | | | | | | | | | | | | | >> 7734 loadTagFile /META-INF/tags/simplewebplain/radioButtons.tag | | | | | | | | | | | | | | | | | | | | >> 7734 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | | | >> 7749 generateJava | | | | | | | | | | | | | | | | | | | | | 7890 generateJava paresed & validated \radioButtons_tag.java | | | | | | | | | | | | | | | | | | | | | | >> 7890 Visiting tag /META-INF/tags/simplewebplain/radioButton.tag | | | | | | | | | | | | | | | | | | | | | | 7890 loadTagFile CompCtx /META-INF/tags/simplewebplain/radioButton.tag | | | | | | | | | | | | | | | | | | | | | | | >> 7890 loadTagFile /META-INF/tags/simplewebplain/radioButton.tag | | | | | | | | | | | | | | | | | | | | | | | | >> 7890 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | | | | | | | >> 7906 generateJava | | | | | | | | | | | | | | | | | | | | | | | | | 7953 generateJava paresed & validated \radioButton_tag.java | | | | | | | | | | | | | | | | | | | | | | | | | 7953 generateJava tag file processed \radioButton_tag.java | | | | | | | | | | | | | | | | | | | | | | | | | << 7968 62 generateJava generated \radioButton_tag.java | | | | | | | | | | | | | | | | | | | | | | | | | >> 7968 generateClass in compile | | | | | | | | | | | | | | | | | | | | | | | | | << 8281 313 generateClass in compile | | | | | | | | | | | | | | | | | | | | | | | | 8281 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | | | | | | | | | | | | | << 8296 406 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | | | | | << 8312 422 loadTagFile /META-INF/tags/simplewebplain/radioButton.tag | | | | | | | | | | | | | | | | | | | | | | << 8312 422 Visited tag /META-INF/tags/simplewebplain/radioButton.tag | | | | | | | | | | | | | | | | | | | | | 8312 generateJava tag file processed \radioButtons_tag.java | | | | | | | | | | | | | | | | | | | | | << 8328 579 generateJava generated \radioButtons_tag.java | | | | | | | | | | | | | | | | | | | | | >> 8328 generateClass in compile | | | | | | | | | | | | | | | | | | | | | << 8671 343 generateClass in compile | | | | | | | | | | | | | | | | | | | | 8671 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | | | | | | | | | << 8671 937 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | << 8687 953 loadTagFile /META-INF/tags/simplewebplain/radioButtons.tag | | | | | | | | | | | | | | | | | | << 8687 953 Visited tag /META-INF/tags/simplewebplain/radioButtons.tag | | | | | | | | | | | | | | | | | | >> 8687 Visiting tag /META-INF/tags/simplewebplain/checkbox.tag | | | | | | | | | | | | | | | | | | 8687 loadTagFile CompCtx /META-INF/tags/simplewebplain/checkbox.tag | | | | | | | | | | | | | | | | | | | >> 8687 loadTagFile /META-INF/tags/simplewebplain/checkbox.tag | | | | | | | | | | | | | | | | | | | | >> 8687 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | | | >> 8687 generateJava | | | | | | | | | | | | | | | | | | | | | 8765 generateJava paresed & validated \checkbox_tag.java | | | | | | | | | | | | | | | | | | | | | 8781 generateJava tag file processed \checkbox_tag.java | | | | | | | | | | | | | | | | | | | | | << 8781 94 generateJava generated \checkbox_tag.java | | | | | | | | | | | | | | | | | | | | | >> 8781 generateClass in compile | | | | | | | | | | | | | | | | | | | | | << 9203 422 generateClass in compile | | | | | | | | | | | | | | | | | | | | 9203 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | | | | | | | | | << 9203 516 wrapper.loadTagFile | | | | | | | | | | | | | | | | | | | << 9218 531 loadTagFile /META-INF/tags/simplewebplain/checkbox.tag | | | | | | | | | | | | | | | | | | << 9218 531 Visited tag /META-INF/tags/simplewebplain/checkbox.tag | | | | | | | | | | | | | | | | | 9218 generateJava tag file processed \widget_tag.java | | | | | | | | | | | | | | | | | << 9312 2188 generateJava generated \widget_tag.java | | | | | | | | | | | | | | | | | >> 9312 generateClass in compile | | | | | | | | | | | | | | | | | << 9749 437 generateClass in compile | | | | | | | | | | | | | | | | 9749 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | | | | | << 9765 2641 wrapper.loadTagFile | | | | | | | | | | | | | | | << 9781 2657 loadTagFile /META-INF/tags/simplewebplain/widget.tag | | | | | | | | | | | | | | << 9781 2657 Visited tag /META-INF/tags/simplewebplain/widget.tag | | | | | | | | | | | | | 9781 generateJava tag file processed \field_tag.java | | | | | | | | | | | | | << 9796 2812 generateJava generated \field_tag.java | | | | | | | | | | | | | >> 9812 generateClass in compile | | | | | | | | | | | | | << 10109 297 generateClass in compile | | | | | | | | | | | | 10124 wrapper.loadTagFile compiled, loading... | | | | | | | | | | | | << 10124 3140 wrapper.loadTagFile | | | | | | | | | | | << 10140 3156 loadTagFile /META-INF/tags/simplewebplain/field.tag | | | | | | | | | | << 10140 3156 Visited tag /META-INF/tags/simplewebplain/field.tag | | | | | | | | | 10140 generateJava tag file processed \autoCrudGroup_tag.java | | | | | | | | | << 10171 3484 generateJava generated \autoCrudGroup_tag.java | | | | | | | | | >> 10171 generateClass in compile | | | | | | | | | << 10515 344 generateClass in compile | | | | | | | | 10515 wrapper.loadTagFile compiled, loading... | | | | | | | | << 10515 3828 wrapper.loadTagFile | | | | | | | << 10531 3844 loadTagFile /META-INF/tags/simplewebplain/autoCrudGroup.tag | | | | | | << 10531 3844 Visited tag /META-INF/tags/simplewebplain/autoCrudGroup.tag | | | | | | >> 10531 Visiting tag /META-INF/tags/simplewebplain/buttons.tag | | | | | | 10531 loadTagFile CompCtx /META-INF/tags/simplewebplain/buttons.tag | | | | | | | >> 10531 loadTagFile /META-INF/tags/simplewebplain/buttons.tag | | | | | | | | >> 10531 wrapper.loadTagFile | | | | | | | | | >> 10531 generateJava | | | | | | | | | 10718 generateJava paresed & validated \buttons_tag.java | | | | | | | | | 10718 generateJava tag file processed \buttons_tag.java | | | | | | | | | << 10734 203 generateJava generated \buttons_tag.java | | | | | | | | | >> 10734 generateClass in compile | | | | | | | | | << 11187 453 generateClass in compile | | | | | | | | 11187 wrapper.loadTagFile compiled, loading... | | | | | | | | << 11187 656 wrapper.loadTagFile | | | | | | | << 11203 672 loadTagFile /META-INF/tags/simplewebplain/buttons.tag | | | | | | << 11203 672 Visited tag /META-INF/tags/simplewebplain/buttons.tag | | | | | 11203 generateJava tag file processed \autoCrud_tag.java | | | | | << 11249 5937 generateJava generated \autoCrud_tag.java | | | | | >> 11249 generateClass in compile | | | | | << 11671 422 generateClass in compile | | | | 11671 wrapper.loadTagFile compiled, loading... | | | | << 11687 6391 wrapper.loadTagFile | | | << 11702 6406 loadTagFile /META-INF/tags/simplewebplain/autoCrud.tag | | << 11702 6406 Visited tag /META-INF/tags/simplewebplain/autoCrud.tag | 11702 generateJava tag file processed \WAutoCrudPage_jsp.java | << 11734 11734 generateJava generated \WAutoCrudPage_jsp.java =3D=3D=3D parse 3483 gen 592 javac 7110 | >> 11734 generateClass in compile | << 12109 375 generateClass in compile =3D=3D=3D parse 3483 gen 592 javac 7485 1=3D=3D doFinalize end 13594 -- Dr Anthony Berglas=20 Ph. +61 7 3227 4410 (Mob. +61 42 783 0248) ABerglas@RSA.com; Anthony@Berglas.org --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org For additional commands, e-mail: users-help@tomcat.apache.org