By default Jasper is configured for use when doing web application development.
The servlet which implements Jasper is configured using init parameters in your global$CATALINA_BASE/conf/web.xml.
checkInterval – If development is false and checkInterval is greater than zero, background compiles are enabled. checkInterval is the time in seconds between checks to see if a JSP page (and its dependent files) needs to be recompiled. Default 0 seconds.
classdebuginfo – Should the class file be compiled with debugging information? true or false, default true.
classpath – Defines the class path to be used to compile the generated servlets. This parameter only has an effect if the ServletContext attribute org.apache.jasper.Constants.SERVLET_CLASSPATH is not set. This attribute is always set when Jasper is used within Tomcat. By default the classpath is created dynamically based on the current web application.
compiler – Which compiler Ant should use to compile JSP pages. The valid values for this are the same as for the compiler attribute of Ant’s javac task. If the value is not set, then the default Eclipse JDT Java compiler will be used instead of using Ant. There is no default value. If this attribute is set then setenv.[sh|bat]should be used to add ant.jar, ant-launcher.jar and tools.jar to the CLASSPATH environment variable.
compilerSourceVM – What JDK version are the source files compatible with? (Default value: 1.7)
compilerTargetVM – What JDK version are the generated files compatible with? (Default value: 1.7)
development – Is Jasper used in development mode? If true, the frequency at which JSPs are checked for modification may be specified via the modificationTestInterval parameter.true or false, default true.
displaySourceFragment – Should a source fragment be included in exception messages? true or false, default true.
dumpSmap – Should the SMAP info for JSR45 debugging be dumped to a file? true or false, default false. false if suppressSmap is true.
enablePooling – Determines whether tag handler pooling is enabled. This is a compilation option. It will not alter the behaviour of JSPs that have already been compiled. true or false, default true.
engineOptionsClass – Allows specifying the Options class used to configure Jasper. If not present, the default EmbeddedServletOptions will be used.
errorOnUseBeanInvalidClassAttribute – Should Jasper issue an error when the value of the class attribute in an useBean action is not a valid bean class? true or false, default true.
fork – Have Ant fork JSP page compiles so they are performed in a separate JVM from Tomcat? true or false, default true.
genStringAsCharArray – Should text strings be generated as char arrays, to improve performance in some cases? Default false.
ieClassId – The class-id value to be sent to Internet Explorer when using <jsp:plugin> tags. Defaultclsid:8AD9C840-044E-11D1-B3E9-00805F499D93.
javaEncoding – Java file encoding to use for generating java source files. Default UTF8.
- keepgenerated – Should we keep the generated Java source code for each page instead of deleting it? trueor false, default true.
mappedfile – Should we generate static content with one print statement per input line, to ease debugging?true or false, default true.
maxLoadedJsps – The maximum number of JSPs that will be loaded for a web application. If more than this number of JSPs are loaded, the least recently used JSPs will be unloaded so that the number of JSPs loaded at any one time does not exceed this limit. A value of zero or less indicates no limit. Default -1
jspIdleTimeout – The amount of time in seconds a JSP can be idle before it is unloaded. A value of zero or less indicates never unload. Default -1
modificationTestInterval – Causes a JSP (and its dependent files) to not be checked for modification during the specified time interval (in seconds) from the last time the JSP was checked for modification. A value of 0 will cause the JSP to be checked on every access. Used in development mode only. Default is 4 seconds.
recompileOnFail – If a JSP compilation fails should the modificationTestInterval be ignored and the next access trigger a re-compilation attempt? Used in development mode only and is disabled by default as compilation may be expensive and could lead to excessive resource usage.
scratchdir – What scratch directory should we use when compiling JSP pages? Default is the work directory for the current web application.
suppressSmap – Should the generation of SMAP info for JSR45 debugging be suppressed? true or false, default false.
trimSpaces – Should white spaces in template text between actions or directives be trimmed ?, default false.
xpoweredBy – Determines whether X-Powered-By response header is added by generated servlet. true or false, default false.
The Java compiler from Eclipse JDT in included as the default compiler. It is an advanced Java compiler which will load all dependencies from the Tomcat class loader, which will help tremendously when compiling on large installations with tens of JARs. On fast servers, this will allow sub-second recompilation cycles for even large JSP pages.
Apache Ant, which was used in previous Tomcat releases, can be used instead of the new compiler by configuring the compiler attribute as explained above.