Class JspC
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.Task
-
- org.apache.jasper.JspC
-
- All Implemented Interfaces:
java.lang.Cloneable,Options
public class JspC extends org.apache.tools.ant.Task implements Options
Shell for the jspc compiler. Handles all options associated with the command line and creates compilation contexts which it then compiles according to the specified options. This version can process files from a _single_ webapp at once, i.e. a single docbase can be specified. It can be used as an Ant task using:<taskdef classname="org.apache.jasper.JspC" name="jasper" > <classpath> <pathelement location="${java.home}/../lib/tools.jar"/> <fileset dir="${ENV.CATALINA_HOME}/lib"> <include name="*.jar"/> </fileset> <path refid="myjars"/> </classpath> </taskdef> <jasper verbose="0" package="my.package" uriroot="${webapps.dir}/${webapp.name}" webXmlFragment="${build.dir}/generated_web.xml" outputDir="${webapp.dir}/${webapp.name}/WEB-INF/src/my/package" />- Author:
- Danno Ferrin, Pierre Delisle, Costin Manolache, Yoav Shapira
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanaddWebXmlMappingsprotected static intALL_WEBXMLprotected intargPosprotected java.lang.String[]argsprotected booleanblockExternalprotected java.util.Map<java.lang.String,TagLibraryInfo>cacheprotected booleancachingprotected booleanclassDebugInfoprotected java.lang.StringclassPathprotected booleancompileprotected java.lang.Stringcompilerprotected java.lang.StringcompilerSourceVMprotected java.lang.StringcompilerTargetVMprotected JspCServletContextcontextThe servlet context.protected static intDEFAULT_DIE_LEVELstatic java.lang.StringDEFAULT_IE_CLASS_IDDeprecated.protected intdieLevelprotected booleanerrorOnUseBeanInvalidClassAttributeNeeds better documentation, this data member does.protected java.util.List<java.lang.String>extensionsThe file extensions to be handled as JSP files.protected booleanfailFastprotected booleanfailOnErrorThrow an exception if there's a compilation error, or swallow it.protected static intFRG_WEBXMLprotected booleanfullstopprotected booleangenStringAsCharArrayprotected booleanhelpNeededprotected java.lang.StringieClassIdprotected static intINC_WEBXMLprotected static java.util.Set<java.lang.String>insertBeforeprotected java.lang.StringjavaEncodingThe java file encoding.protected JspConfigjspConfigprotected static java.lang.StringLIST_ERRORSprotected booleanlistErrorsprotected java.lang.ClassLoaderloaderprotected java.io.Writermapoutprotected booleanmappedFileprotected java.io.CharArrayWritermappingoutprotected static intNO_DIE_LEVELprotected java.util.List<java.lang.String>pagesThe pages.protected booleanpoolingEnabledprotected booleanquoteAttributeELprotected JspRuntimeContextrctxtThe runtime context.protected TldScannerscannerprotected java.io.FilescratchDirprotected java.io.CharArrayWriterservletoutprotected static java.lang.StringSHOW_SUCCESSprotected booleanshowSuccessprotected booleansmapDumpedprotected booleansmapSuppressedprotected booleanstrictQuoteEscapingprotected static java.lang.StringSWITCH_ADD_WEBAPP_XML_MAPPINGSprotected static java.lang.StringSWITCH_CACHEprotected static java.lang.StringSWITCH_CLASS_NAMEprotected static java.lang.StringSWITCH_CLASSPATHprotected static java.lang.StringSWITCH_COMPILEprotected static java.lang.StringSWITCH_DIEprotected static java.lang.StringSWITCH_DUMP_SMAPprotected static java.lang.StringSWITCH_ENCODINGprotected static java.lang.StringSWITCH_FAIL_FASTprotected static java.lang.StringSWITCH_FILE_WEBAPPprotected static java.lang.StringSWITCH_FULL_STOPprotected static java.lang.StringSWITCH_HELPprotected static java.lang.StringSWITCH_MAPPEDprotected static java.lang.StringSWITCH_NO_BLOCK_EXTERNALprotected static java.lang.StringSWITCH_NO_QUOTE_ATTRIBUTE_ELprotected static java.lang.StringSWITCH_NO_STRICT_QUOTE_ESCAPINGprotected static java.lang.StringSWITCH_OUTPUT_DIRprotected static java.lang.StringSWITCH_PACKAGE_NAMEprotected static java.lang.StringSWITCH_POOLINGprotected static java.lang.StringSWITCH_QUOTE_ATTRIBUTE_ELprotected static java.lang.StringSWITCH_SMAPprotected static java.lang.StringSWITCH_SOURCEprotected static java.lang.StringSWITCH_TARGETprotected static java.lang.StringSWITCH_THREAD_COUNTprotected static java.lang.StringSWITCH_TRIM_SPACESprotected static java.lang.StringSWITCH_URI_BASEprotected static java.lang.StringSWITCH_URI_ROOTprotected static java.lang.StringSWITCH_VALIDATE_TLDprotected static java.lang.StringSWITCH_VALIDATE_XMLprotected static java.lang.StringSWITCH_VERBOSEprotected static java.lang.StringSWITCH_WEBAPP_FRGprotected static java.lang.StringSWITCH_WEBAPP_INCprotected static java.lang.StringSWITCH_WEBAPP_XMLprotected static java.lang.StringSWITCH_WEBAPP_XML_ENCODINGprotected static java.lang.StringSWITCH_XPOWERED_BYprotected TagPluginManagertagPluginManagerprotected java.lang.StringtargetClassNameprotected java.lang.StringtargetPackageprotected intthreadCountThe number of threads to use; default is one per coreprotected TldCachetldCacheCache for the TLD locationsprotected TrimSpacesOptiontrimSpacesprotected java.lang.StringuriBaseprotected java.lang.StringuriRootprotected booleanvalidateTldprotected booleanvalidateXmlprotected booleanverboseprotected java.lang.StringwebxmlEncodingprotected java.lang.StringwebxmlFileprotected intwebxmlLevelprotected booleanxpoweredBy
-
Constructor Summary
Constructors Constructor Description JspC()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidaddExtension(java.lang.String extension)Adds the given file extension to the list of extensions handled as JSP files.protected voidcompleteWebXml()voidexecute()Executes the compilation.voidgenerateWebMapping(java.lang.String file, JspCompilationContext clctxt)Adds servlet declaration and mapping for the JSP page servlet to the generated web.xml fragment.booleangenStringAsCharArray()Indicates whether text strings are to be generated as char arrays.java.util.Map<java.lang.String,TagLibraryInfo>getCache()The web-application wide cache for the TagLibraryInfo tag library descriptors, used ifOptions.isCaching()returnstrue.intgetCheckInterval()In JspC this always returns0.booleangetClassDebugInfo()java.lang.StringgetClassPath()java.lang.StringgetCompiler()Compiler to use.java.lang.StringgetCompilerClassName()java.lang.StringgetCompilerSourceVM()java.lang.StringgetCompilerTargetVM()booleangetDevelopment()In JspC this always returnsfalse.booleangetDisplaySourceFragment()In JspC this always returnstrue.booleangetErrorOnUseBeanInvalidClassAttribute()Returns true if Jasper issues a compilation error instead of a runtime Instantiation error if the class attribute specified in useBean action is invalid.java.util.List<java.lang.String>getExtensions()Returns the list of file extensions that are treated as JSP files.booleangetFailOnError()booleangetFork()The boolean flag to tell Ant whether to fork JSP page compilations.booleangetGeneratedJavaAddTimestamp()Should the container include the time the file was generated in the comments at the start of a Java file generated from a JSP or tag.java.lang.StringgetIeClassId()Deprecated.java.lang.StringgetJavaEncoding()Returns the encoding to use for java files.JspConfiggetJspConfig()intgetJspIdleTimeout()booleangetKeepGenerated()In JspC this always returnstrue.booleangetMappedFile()intgetMaxLoadedJsps()The maximum number of loaded jsps per web-application.intgetModificationTestInterval()In JspC this always returns0.booleangetQuoteAttributeEL()booleangetRecompileOnFail()In JspC this always returnsfalse.java.io.FilegetScratchDir()booleangetStrictQuoteEscaping()TagPluginManagergetTagPluginManager()intgetThreadCount()TldCachegetTldCache()The cache that maps URIs, resource paths and parsed TLD files for the various tag libraries 'exposed' by the web application.TrimSpacesOptiongetTrimSpaces()protected java.lang.ClassLoaderinitClassLoader()Initializes the classloader as/if needed for the given compilation context.protected voidinitServletContext(java.lang.ClassLoader classLoader)protected voidinitTldScanner(JspCServletContext context, java.lang.ClassLoader classLoader)protected voidinitWebXml()booleanisBlockExternal()booleanisCaching()booleanisPoolingEnabled()booleanisSmapDumped()This setting is ignored if suppressSmap() istrue.booleanisSmapSuppressed()booleanisValidateTld()booleanisValidateXml()booleanisXpoweredBy()protected voidlocateUriRoot(java.io.File f)Find the WEB-INF dir by looking up in the directory tree.static voidmain(java.lang.String[] arg)protected voidmergeIntoWebXml()Include the generated web.xml inside the webapp's web.xml.protected TldScannernewTldScanner(JspCServletContext context, boolean namespaceAware, boolean validate, boolean blockExternal)protected java.lang.StringnextArg()protected java.lang.StringnextFile()protected voidprocessFile(java.lang.String file)protected java.io.FileresolveFile(java.lang.String s)Resolves the relative or absolute pathname correctly in both Ant and command-line situations.voidscanFiles()Locate all jsp files in the webapp.voidscanFiles(java.io.File base)Deprecated.This will be removed in Tomcat 10.voidsetAddWebXmlMappings(boolean b)Sets the option to merge generated web.xml fragment into the WEB-INF/web.xml file of the web application that we were processing.voidsetArgs(java.lang.String[] arg)Apply command-line arguments.voidsetBlockExternal(boolean b)voidsetCaching(boolean caching)Sets the option to enable caching.voidsetClassDebugInfo(boolean b)Sets the option to include debug information in compiled class.voidsetClassName(java.lang.String p)Class name of the generated file ( without package ).voidsetClassPath(java.lang.String s)Sets the classpath used while compiling the servlets generated from JSP filesvoidsetCompile(boolean b)Sets the compile flag.voidsetCompiler(java.lang.String c)Sets the option to determine what compiler to use.voidsetCompilerSourceVM(java.lang.String vm)Sets the compiler source VM.voidsetCompilerTargetVM(java.lang.String vm)Sets the compiler target VM.voidsetErrorOnUseBeanInvalidClassAttribute(boolean b)Sets the option to issue a compilation error if the class attribute specified in useBean action is invalid.voidsetFailOnError(boolean b)Sets the option that throws an exception in case of a compilation error.voidsetFork(boolean fork)voidsetGenStringAsCharArray(boolean genStringAsCharArray)Determines whether text strings are to be generated as char arrays, which improves performance in some cases.voidsetIeClassId(java.lang.String ieClassId)Deprecated.Will be removed in Tomcat 10.1voidsetJavaEncoding(java.lang.String encodingName)Sets the encoding to use for java files.voidsetJspFiles(java.lang.String jspFiles)Parses comma-separated list of JSP files to be processed.voidsetListErrors(boolean b)voidsetMappedFile(boolean b)voidsetOutputDir(java.lang.String s)voidsetPackage(java.lang.String p)Sets the package name to be used for the generated servlet classes.voidsetPoolingEnabled(boolean poolingEnabled)Sets the option to enable the tag handler pooling.voidsetQuoteAttributeEL(boolean b)voidsetSmapDumped(boolean smapDumped)Sets smapDumped flag.voidsetSmapSuppressed(boolean smapSuppressed)Sets smapSuppressed flag.voidsetStrictQuoteEscaping(boolean b)voidsetThreadCount(java.lang.String threadCount)voidsetTrimSpaces(boolean trimSpaces)voidsetTrimSpaces(java.lang.String ts)Sets the option to control handling of template text that consists entirely of whitespace.voidsetTrimSpaces(TrimSpacesOption trimSpaces)voidsetUriroot(java.lang.String s)Base dir for the webapp.voidsetValidateTld(boolean b)voidsetValidateXml(boolean b)voidsetVerbose(int level)Sets the verbosity level.voidsetWebFragmentXml(java.lang.String s)File where we generate a complete web-fragment.xml with the class definitions.voidsetWebXml(java.lang.String s)File where we generate a complete web.xml with the class definitions.voidsetWebXmlEncoding(java.lang.String encoding)Sets the encoding to be used to read and write web.xml files.voidsetWebXmlFragment(java.lang.String s)Deprecated.Will be removed in Tomcat 10.voidsetWebXmlInclude(java.lang.String s)File where we generate configuration with the class definitions to be included in a web.xml file.voidsetXpoweredBy(boolean xpoweredBy)Sets the option to enable generation of X-Powered-By response header.-
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
-
-
-
-
Field Detail
-
DEFAULT_IE_CLASS_ID
@Deprecated public static final java.lang.String DEFAULT_IE_CLASS_ID
Deprecated.- See Also:
- Constant Field Values
-
SWITCH_VERBOSE
protected static final java.lang.String SWITCH_VERBOSE
- See Also:
- Constant Field Values
-
SWITCH_HELP
protected static final java.lang.String SWITCH_HELP
- See Also:
- Constant Field Values
-
SWITCH_OUTPUT_DIR
protected static final java.lang.String SWITCH_OUTPUT_DIR
- See Also:
- Constant Field Values
-
SWITCH_PACKAGE_NAME
protected static final java.lang.String SWITCH_PACKAGE_NAME
- See Also:
- Constant Field Values
-
SWITCH_CACHE
protected static final java.lang.String SWITCH_CACHE
- See Also:
- Constant Field Values
-
SWITCH_CLASS_NAME
protected static final java.lang.String SWITCH_CLASS_NAME
- See Also:
- Constant Field Values
-
SWITCH_FULL_STOP
protected static final java.lang.String SWITCH_FULL_STOP
- See Also:
- Constant Field Values
-
SWITCH_COMPILE
protected static final java.lang.String SWITCH_COMPILE
- See Also:
- Constant Field Values
-
SWITCH_FAIL_FAST
protected static final java.lang.String SWITCH_FAIL_FAST
- See Also:
- Constant Field Values
-
SWITCH_SOURCE
protected static final java.lang.String SWITCH_SOURCE
- See Also:
- Constant Field Values
-
SWITCH_TARGET
protected static final java.lang.String SWITCH_TARGET
- See Also:
- Constant Field Values
-
SWITCH_URI_BASE
protected static final java.lang.String SWITCH_URI_BASE
- See Also:
- Constant Field Values
-
SWITCH_URI_ROOT
protected static final java.lang.String SWITCH_URI_ROOT
- See Also:
- Constant Field Values
-
SWITCH_FILE_WEBAPP
protected static final java.lang.String SWITCH_FILE_WEBAPP
- See Also:
- Constant Field Values
-
SWITCH_WEBAPP_INC
protected static final java.lang.String SWITCH_WEBAPP_INC
- See Also:
- Constant Field Values
-
SWITCH_WEBAPP_FRG
protected static final java.lang.String SWITCH_WEBAPP_FRG
- See Also:
- Constant Field Values
-
SWITCH_WEBAPP_XML
protected static final java.lang.String SWITCH_WEBAPP_XML
- See Also:
- Constant Field Values
-
SWITCH_WEBAPP_XML_ENCODING
protected static final java.lang.String SWITCH_WEBAPP_XML_ENCODING
- See Also:
- Constant Field Values
-
SWITCH_ADD_WEBAPP_XML_MAPPINGS
protected static final java.lang.String SWITCH_ADD_WEBAPP_XML_MAPPINGS
- See Also:
- Constant Field Values
-
SWITCH_MAPPED
protected static final java.lang.String SWITCH_MAPPED
- See Also:
- Constant Field Values
-
SWITCH_XPOWERED_BY
protected static final java.lang.String SWITCH_XPOWERED_BY
- See Also:
- Constant Field Values
-
SWITCH_TRIM_SPACES
protected static final java.lang.String SWITCH_TRIM_SPACES
- See Also:
- Constant Field Values
-
SWITCH_CLASSPATH
protected static final java.lang.String SWITCH_CLASSPATH
- See Also:
- Constant Field Values
-
SWITCH_DIE
protected static final java.lang.String SWITCH_DIE
- See Also:
- Constant Field Values
-
SWITCH_POOLING
protected static final java.lang.String SWITCH_POOLING
- See Also:
- Constant Field Values
-
SWITCH_ENCODING
protected static final java.lang.String SWITCH_ENCODING
- See Also:
- Constant Field Values
-
SWITCH_SMAP
protected static final java.lang.String SWITCH_SMAP
- See Also:
- Constant Field Values
-
SWITCH_DUMP_SMAP
protected static final java.lang.String SWITCH_DUMP_SMAP
- See Also:
- Constant Field Values
-
SWITCH_VALIDATE_TLD
protected static final java.lang.String SWITCH_VALIDATE_TLD
- See Also:
- Constant Field Values
-
SWITCH_VALIDATE_XML
protected static final java.lang.String SWITCH_VALIDATE_XML
- See Also:
- Constant Field Values
-
SWITCH_NO_BLOCK_EXTERNAL
protected static final java.lang.String SWITCH_NO_BLOCK_EXTERNAL
- See Also:
- Constant Field Values
-
SWITCH_NO_STRICT_QUOTE_ESCAPING
protected static final java.lang.String SWITCH_NO_STRICT_QUOTE_ESCAPING
- See Also:
- Constant Field Values
-
SWITCH_QUOTE_ATTRIBUTE_EL
protected static final java.lang.String SWITCH_QUOTE_ATTRIBUTE_EL
- See Also:
- Constant Field Values
-
SWITCH_NO_QUOTE_ATTRIBUTE_EL
protected static final java.lang.String SWITCH_NO_QUOTE_ATTRIBUTE_EL
- See Also:
- Constant Field Values
-
SWITCH_THREAD_COUNT
protected static final java.lang.String SWITCH_THREAD_COUNT
- See Also:
- Constant Field Values
-
SHOW_SUCCESS
protected static final java.lang.String SHOW_SUCCESS
- See Also:
- Constant Field Values
-
LIST_ERRORS
protected static final java.lang.String LIST_ERRORS
- See Also:
- Constant Field Values
-
INC_WEBXML
protected static final int INC_WEBXML
- See Also:
- Constant Field Values
-
FRG_WEBXML
protected static final int FRG_WEBXML
- See Also:
- Constant Field Values
-
ALL_WEBXML
protected static final int ALL_WEBXML
- See Also:
- Constant Field Values
-
DEFAULT_DIE_LEVEL
protected static final int DEFAULT_DIE_LEVEL
- See Also:
- Constant Field Values
-
NO_DIE_LEVEL
protected static final int NO_DIE_LEVEL
- See Also:
- Constant Field Values
-
insertBefore
protected static final java.util.Set<java.lang.String> insertBefore
-
classPath
protected java.lang.String classPath
-
loader
protected java.lang.ClassLoader loader
-
trimSpaces
protected TrimSpacesOption trimSpaces
-
genStringAsCharArray
protected boolean genStringAsCharArray
-
validateTld
protected boolean validateTld
-
validateXml
protected boolean validateXml
-
blockExternal
protected boolean blockExternal
-
strictQuoteEscaping
protected boolean strictQuoteEscaping
-
quoteAttributeEL
protected boolean quoteAttributeEL
-
xpoweredBy
protected boolean xpoweredBy
-
mappedFile
protected boolean mappedFile
-
poolingEnabled
protected boolean poolingEnabled
-
scratchDir
protected java.io.File scratchDir
-
ieClassId
protected java.lang.String ieClassId
-
targetPackage
protected java.lang.String targetPackage
-
targetClassName
protected java.lang.String targetClassName
-
uriBase
protected java.lang.String uriBase
-
uriRoot
protected java.lang.String uriRoot
-
dieLevel
protected int dieLevel
-
helpNeeded
protected boolean helpNeeded
-
compile
protected boolean compile
-
failFast
protected boolean failFast
-
smapSuppressed
protected boolean smapSuppressed
-
smapDumped
protected boolean smapDumped
-
caching
protected boolean caching
-
cache
protected final java.util.Map<java.lang.String,TagLibraryInfo> cache
-
compiler
protected java.lang.String compiler
-
compilerTargetVM
protected java.lang.String compilerTargetVM
-
compilerSourceVM
protected java.lang.String compilerSourceVM
-
classDebugInfo
protected boolean classDebugInfo
-
failOnError
protected boolean failOnError
Throw an exception if there's a compilation error, or swallow it. Default is true to preserve old behavior.
-
extensions
protected java.util.List<java.lang.String> extensions
The file extensions to be handled as JSP files. Default list is .jsp and .jspx.
-
pages
protected final java.util.List<java.lang.String> pages
The pages.
-
errorOnUseBeanInvalidClassAttribute
protected boolean errorOnUseBeanInvalidClassAttribute
Needs better documentation, this data member does. True by default.
-
javaEncoding
protected java.lang.String javaEncoding
The java file encoding. Default is UTF-8. Added per bugzilla 19622.
-
threadCount
protected int threadCount
The number of threads to use; default is one per core
-
webxmlFile
protected java.lang.String webxmlFile
-
webxmlLevel
protected int webxmlLevel
-
webxmlEncoding
protected java.lang.String webxmlEncoding
-
addWebXmlMappings
protected boolean addWebXmlMappings
-
mapout
protected java.io.Writer mapout
-
servletout
protected java.io.CharArrayWriter servletout
-
mappingout
protected java.io.CharArrayWriter mappingout
-
context
protected JspCServletContext context
The servlet context.
-
rctxt
protected JspRuntimeContext rctxt
The runtime context. Maintain a dummy JspRuntimeContext for compiling tag files.
-
tldCache
protected TldCache tldCache
Cache for the TLD locations
-
jspConfig
protected JspConfig jspConfig
-
tagPluginManager
protected TagPluginManager tagPluginManager
-
scanner
protected TldScanner scanner
-
verbose
protected boolean verbose
-
listErrors
protected boolean listErrors
-
showSuccess
protected boolean showSuccess
-
argPos
protected int argPos
-
fullstop
protected boolean fullstop
-
args
protected java.lang.String[] args
-
-
Method Detail
-
main
public static void main(java.lang.String[] arg)
-
setArgs
public void setArgs(java.lang.String[] arg) throws JasperExceptionApply command-line arguments.- Parameters:
arg- The arguments- Throws:
JasperException- JSPC error
-
getKeepGenerated
public boolean getKeepGenerated()
In JspC this always returnstrue.- Specified by:
getKeepGeneratedin interfaceOptions- Returns:
trueto keep the generated source
-
getTrimSpaces
public TrimSpacesOption getTrimSpaces()
- Specified by:
getTrimSpacesin interfaceOptions- Returns:
TrimSpacesOption.TRUEto remove template text that consists only of whitespace from the output completely,TrimSpacesOption.SINGLEto replace such template text with a single space,TrimSpacesOption.FALSEto leave such template text unchanged orTrimSpacesOption.EXTENDEDto remove template text that consists only of whitespace and to replace any sequence of whitespace and new lines within template text with a single new line.
-
setTrimSpaces
public void setTrimSpaces(TrimSpacesOption trimSpaces)
-
setTrimSpaces
public void setTrimSpaces(java.lang.String ts)
Sets the option to control handling of template text that consists entirely of whitespace.- Parameters:
ts- New value
-
setTrimSpaces
public void setTrimSpaces(boolean trimSpaces)
-
isPoolingEnabled
public boolean isPoolingEnabled()
- Specified by:
isPoolingEnabledin interfaceOptions- Returns:
trueif tag handler pooling is enabled,falseotherwise.
-
setPoolingEnabled
public void setPoolingEnabled(boolean poolingEnabled)
Sets the option to enable the tag handler pooling.- Parameters:
poolingEnabled- New value
-
isXpoweredBy
public boolean isXpoweredBy()
- Specified by:
isXpoweredByin interfaceOptions- Returns:
trueto generate a X-Powered-By response header.
-
setXpoweredBy
public void setXpoweredBy(boolean xpoweredBy)
Sets the option to enable generation of X-Powered-By response header.- Parameters:
xpoweredBy- New value
-
getDisplaySourceFragment
public boolean getDisplaySourceFragment()
In JspC this always returnstrue.- Specified by:
getDisplaySourceFragmentin interfaceOptions- Returns:
trueto include a source fragment in exception messages.
-
getMaxLoadedJsps
public int getMaxLoadedJsps()
Description copied from interface:OptionsThe maximum number of loaded jsps per web-application. If there are more jsps loaded, they will be unloaded. If unset or less than 0, no jsps are unloaded.- Specified by:
getMaxLoadedJspsin interfaceOptions- Returns:
- The JSP count
-
getJspIdleTimeout
public int getJspIdleTimeout()
- Specified by:
getJspIdleTimeoutin interfaceOptions- Returns:
- the idle time in seconds after which a JSP is unloaded. If unset or less or equal than 0, no jsps are unloaded.
-
getErrorOnUseBeanInvalidClassAttribute
public boolean getErrorOnUseBeanInvalidClassAttribute()
Description copied from interface:OptionsReturns true if Jasper issues a compilation error instead of a runtime Instantiation error if the class attribute specified in useBean action is invalid.- Specified by:
getErrorOnUseBeanInvalidClassAttributein interfaceOptions- Returns:
trueto get an error
-
setErrorOnUseBeanInvalidClassAttribute
public void setErrorOnUseBeanInvalidClassAttribute(boolean b)
Sets the option to issue a compilation error if the class attribute specified in useBean action is invalid.- Parameters:
b- New value
-
getMappedFile
public boolean getMappedFile()
- Specified by:
getMappedFilein interfaceOptions- Returns:
trueif HTML mapped Servlets are supported.
-
setMappedFile
public void setMappedFile(boolean b)
-
setClassDebugInfo
public void setClassDebugInfo(boolean b)
Sets the option to include debug information in compiled class.- Parameters:
b- New value
-
getClassDebugInfo
public boolean getClassDebugInfo()
- Specified by:
getClassDebugInfoin interfaceOptions- Returns:
trueif debug information in included in compiled classes.
-
isCaching
public boolean isCaching()
-
setCaching
public void setCaching(boolean caching)
Sets the option to enable caching.- Parameters:
caching- New value- See Also:
Options.isCaching()
-
getCache
public java.util.Map<java.lang.String,TagLibraryInfo> getCache()
Description copied from interface:OptionsThe web-application wide cache for the TagLibraryInfo tag library descriptors, used ifOptions.isCaching()returnstrue.Using this cache avoids the cost of repeating the parsing of a tag library descriptor XML file (performed by TagLibraryInfoImpl.parseTLD).
-
getCheckInterval
public int getCheckInterval()
In JspC this always returns0.- Specified by:
getCheckIntervalin interfaceOptions- Returns:
- background compile thread check interval in seconds
-
getModificationTestInterval
public int getModificationTestInterval()
In JspC this always returns0.- Specified by:
getModificationTestIntervalin interfaceOptions- Returns:
- modification test interval.
-
getRecompileOnFail
public boolean getRecompileOnFail()
In JspC this always returnsfalse.- Specified by:
getRecompileOnFailin interfaceOptions- Returns:
trueif re-compile will occur on a failure.
-
getDevelopment
public boolean getDevelopment()
In JspC this always returnsfalse. Main development flag, which enables detailed error reports with sources, as well automatic recompilation of JSPs and tag files. This setting should usually befalsewhen running in production.- Specified by:
getDevelopmentin interfaceOptions- Returns:
trueif Jasper is in development mode
-
isSmapSuppressed
public boolean isSmapSuppressed()
- Specified by:
isSmapSuppressedin interfaceOptions- Returns:
trueto suppress generation of SMAP info for JSR45 debugging.
-
setSmapSuppressed
public void setSmapSuppressed(boolean smapSuppressed)
Sets smapSuppressed flag.- Parameters:
smapSuppressed- New value
-
isSmapDumped
public boolean isSmapDumped()
Description copied from interface:OptionsThis setting is ignored if suppressSmap() istrue.- Specified by:
isSmapDumpedin interfaceOptions- Returns:
trueto write SMAP info for JSR45 debugging to a file.
-
setSmapDumped
public void setSmapDumped(boolean smapDumped)
Sets smapDumped flag.- Parameters:
smapDumped- New value- See Also:
Options.isSmapDumped()
-
setGenStringAsCharArray
public void setGenStringAsCharArray(boolean genStringAsCharArray)
Determines whether text strings are to be generated as char arrays, which improves performance in some cases.- Parameters:
genStringAsCharArray- true if text strings are to be generated as char arrays, false otherwise
-
genStringAsCharArray
public boolean genStringAsCharArray()
Description copied from interface:OptionsIndicates whether text strings are to be generated as char arrays.- Specified by:
genStringAsCharArrayin interfaceOptions- Returns:
trueif text strings are to be generated as char arrays,falseotherwise
-
setIeClassId
@Deprecated public void setIeClassId(java.lang.String ieClassId)
Deprecated.Will be removed in Tomcat 10.1Sets the class-id value to be sent to Internet Explorer when using <jsp:plugin> tags.- Parameters:
ieClassId- Class-id value
-
getIeClassId
@Deprecated public java.lang.String getIeClassId()
Deprecated.Description copied from interface:OptionsGets the class-id value that is sent to Internet Explorer when using <jsp:plugin> tags.- Specified by:
getIeClassIdin interfaceOptions- Returns:
- Class-id value
-
getScratchDir
public java.io.File getScratchDir()
- Specified by:
getScratchDirin interfaceOptions- Returns:
- the work folder
-
getCompiler
public java.lang.String getCompiler()
Description copied from interface:OptionsCompiler to use.If
null(the default), the java compiler from Eclipse JDT project, bundled with Tomcat, will be used. Otherwise, thejavactask from Apache Ant will be used to call an external java compiler and the value of this option will be passed to it. See Apache Ant documentation for the possible values.- Specified by:
getCompilerin interfaceOptions- Returns:
- the compiler name
-
setCompiler
public void setCompiler(java.lang.String c)
Sets the option to determine what compiler to use.- Parameters:
c- New value- See Also:
Options.getCompiler()
-
getCompilerClassName
public java.lang.String getCompilerClassName()
- Specified by:
getCompilerClassNamein interfaceOptions- Returns:
- Jasper Java compiler class to use.
-
getCompilerTargetVM
public java.lang.String getCompilerTargetVM()
- Specified by:
getCompilerTargetVMin interfaceOptions- Returns:
- the compiler target VM, e.g. 1.8.
-
setCompilerTargetVM
public void setCompilerTargetVM(java.lang.String vm)
Sets the compiler target VM.- Parameters:
vm- New value- See Also:
Options.getCompilerTargetVM()
-
getCompilerSourceVM
public java.lang.String getCompilerSourceVM()
- Specified by:
getCompilerSourceVMin interfaceOptions- Returns:
- the compiler source VM, e.g. 1.8.
-
setCompilerSourceVM
public void setCompilerSourceVM(java.lang.String vm)
Sets the compiler source VM.- Parameters:
vm- New value- See Also:
Options.getCompilerSourceVM()
-
getTldCache
public TldCache getTldCache()
Description copied from interface:OptionsThe cache that maps URIs, resource paths and parsed TLD files for the various tag libraries 'exposed' by the web application. A tag library is 'exposed' either explicitly in web.xml or implicitly via the uri tag in the TLD of a taglib deployed in a jar file (WEB-INF/lib).- Specified by:
getTldCachein interfaceOptions- Returns:
- the instance of the TldLocationsCache for the web-application.
-
getJavaEncoding
public java.lang.String getJavaEncoding()
Returns the encoding to use for java files. The default is UTF-8.- Specified by:
getJavaEncodingin interfaceOptions- Returns:
- String The encoding
-
setJavaEncoding
public void setJavaEncoding(java.lang.String encodingName)
Sets the encoding to use for java files.- Parameters:
encodingName- The name, e.g. "UTF-8"
-
getFork
public boolean getFork()
Description copied from interface:OptionsThe boolean flag to tell Ant whether to fork JSP page compilations.Is used only when Jasper uses an external java compiler (wrapped through a
javacApache Ant task).
-
setFork
public void setFork(boolean fork)
-
getClassPath
public java.lang.String getClassPath()
- Specified by:
getClassPathin interfaceOptions- Returns:
- the classpath used to compile generated Servlets
-
setClassPath
public void setClassPath(java.lang.String s)
Sets the classpath used while compiling the servlets generated from JSP files- Parameters:
s- New value
-
getExtensions
public java.util.List<java.lang.String> getExtensions()
Returns the list of file extensions that are treated as JSP files.- Returns:
- The list of extensions
-
addExtension
protected void addExtension(java.lang.String extension)
Adds the given file extension to the list of extensions handled as JSP files.- Parameters:
extension- The extension to add, e.g. "myjsp"
-
setUriroot
public void setUriroot(java.lang.String s)
Base dir for the webapp. Used to generate class names and resolve includes.- Parameters:
s- New value
-
setJspFiles
public void setJspFiles(java.lang.String jspFiles)
Parses comma-separated list of JSP files to be processed. If the argument is null, nothing is done.Each file is interpreted relative to uriroot, unless it is absolute, in which case it must start with uriroot.
- Parameters:
jspFiles- Comma-separated list of JSP files to be processed
-
setCompile
public void setCompile(boolean b)
Sets the compile flag.- Parameters:
b- Flag value
-
setVerbose
public void setVerbose(int level)
Sets the verbosity level. The actual number doesn't matter: if it's greater than zero, the verbose flag will be true.- Parameters:
level- Positive means verbose
-
setValidateTld
public void setValidateTld(boolean b)
-
isValidateTld
public boolean isValidateTld()
-
setValidateXml
public void setValidateXml(boolean b)
-
isValidateXml
public boolean isValidateXml()
-
setBlockExternal
public void setBlockExternal(boolean b)
-
isBlockExternal
public boolean isBlockExternal()
-
setStrictQuoteEscaping
public void setStrictQuoteEscaping(boolean b)
-
getStrictQuoteEscaping
public boolean getStrictQuoteEscaping()
- Specified by:
getStrictQuoteEscapingin interfaceOptions- Returns:
trueif the quote escaping required by section JSP.1.6 of the JSP specification should be applied to scriplet expression.
-
setQuoteAttributeEL
public void setQuoteAttributeEL(boolean b)
-
getQuoteAttributeEL
public boolean getQuoteAttributeEL()
- Specified by:
getQuoteAttributeELin interfaceOptions- Returns:
trueif EL expressions used within attributes should have the quoting rules in JSP.1.6 applied to the expression.
-
getThreadCount
public int getThreadCount()
-
setThreadCount
public void setThreadCount(java.lang.String threadCount)
-
setListErrors
public void setListErrors(boolean b)
-
setOutputDir
public void setOutputDir(java.lang.String s)
-
setPackage
public void setPackage(java.lang.String p)
Sets the package name to be used for the generated servlet classes.- Parameters:
p- New value
-
setClassName
public void setClassName(java.lang.String p)
Class name of the generated file ( without package ). Can only be used if a single file is converted. XXX Do we need this feature ?- Parameters:
p- New value
-
setWebXmlFragment
@Deprecated public void setWebXmlFragment(java.lang.String s)
Deprecated.Will be removed in Tomcat 10. UsesetWebXmlInclude(String)File where we generate a web.xml fragment with the class definitions.- Parameters:
s- New value
-
setWebXmlInclude
public void setWebXmlInclude(java.lang.String s)
File where we generate configuration with the class definitions to be included in a web.xml file.- Parameters:
s- New value
-
setWebFragmentXml
public void setWebFragmentXml(java.lang.String s)
File where we generate a complete web-fragment.xml with the class definitions.- Parameters:
s- New value
-
setWebXml
public void setWebXml(java.lang.String s)
File where we generate a complete web.xml with the class definitions.- Parameters:
s- New value
-
setWebXmlEncoding
public void setWebXmlEncoding(java.lang.String encoding)
Sets the encoding to be used to read and write web.xml files.If not specified, defaults to UTF-8.
- Parameters:
encoding- Encoding, e.g. "UTF-8".
-
setAddWebXmlMappings
public void setAddWebXmlMappings(boolean b)
Sets the option to merge generated web.xml fragment into the WEB-INF/web.xml file of the web application that we were processing.- Parameters:
b-trueto merge the fragment into the existing web.xml file of the processed web application ({uriroot}/WEB-INF/web.xml),falseto keep the generated web.xml fragment
-
setFailOnError
public void setFailOnError(boolean b)
Sets the option that throws an exception in case of a compilation error.- Parameters:
b- New value
-
getFailOnError
public boolean getFailOnError()
- Returns:
trueif an exception will be thrown in case of a compilation error.
-
getJspConfig
public JspConfig getJspConfig()
- Specified by:
getJspConfigin interfaceOptions- Returns:
- JSP configuration information specified in web.xml.
-
getTagPluginManager
public TagPluginManager getTagPluginManager()
- Specified by:
getTagPluginManagerin interfaceOptions- Returns:
- a Tag Plugin Manager
-
getGeneratedJavaAddTimestamp
public boolean getGeneratedJavaAddTimestamp()
Should the container include the time the file was generated in the comments at the start of a Java file generated from a JSP or tag. Defaults totrue.Hard-coded to
falsefor pre-compiled code to enable repeatable builds.- Specified by:
getGeneratedJavaAddTimestampin interfaceOptions- Returns:
trueto include the timestamp, otherwise don't include it
-
generateWebMapping
public void generateWebMapping(java.lang.String file, JspCompilationContext clctxt) throws java.io.IOExceptionAdds servlet declaration and mapping for the JSP page servlet to the generated web.xml fragment.- Parameters:
file- Context-relative path to the JSP file, e.g./index.jspclctxt- Compilation context of the servlet- Throws:
java.io.IOException- An IO error occurred
-
mergeIntoWebXml
protected void mergeIntoWebXml() throws java.io.IOExceptionInclude the generated web.xml inside the webapp's web.xml.- Throws:
java.io.IOException- An IO error occurred
-
processFile
protected void processFile(java.lang.String file) throws JasperException- Throws:
JasperException
-
scanFiles
@Deprecated public void scanFiles(java.io.File base)
Deprecated.This will be removed in Tomcat 10. UsescanFiles()Locate all jsp files in the webapp. Used if no explicit jsps are specified.- Parameters:
base- Base path
-
scanFiles
public void scanFiles()
Locate all jsp files in the webapp. Used if no explicit jsps are specified. Scan is performed via the ServletContext and will include any JSPs located in resource JARs.
-
execute
public void execute()
Executes the compilation.- Overrides:
executein classorg.apache.tools.ant.Task
-
nextArg
protected java.lang.String nextArg()
-
nextFile
protected java.lang.String nextFile()
-
initWebXml
protected void initWebXml() throws JasperException- Throws:
JasperException
-
completeWebXml
protected void completeWebXml()
-
initTldScanner
protected void initTldScanner(JspCServletContext context, java.lang.ClassLoader classLoader)
-
newTldScanner
protected TldScanner newTldScanner(JspCServletContext context, boolean namespaceAware, boolean validate, boolean blockExternal)
-
initServletContext
protected void initServletContext(java.lang.ClassLoader classLoader) throws java.io.IOException, JasperException- Throws:
java.io.IOExceptionJasperException
-
initClassLoader
protected java.lang.ClassLoader initClassLoader() throws java.io.IOExceptionInitializes the classloader as/if needed for the given compilation context.- Returns:
- the classloader that will be used
- Throws:
java.io.IOException- If an error occurs
-
locateUriRoot
protected void locateUriRoot(java.io.File f)
Find the WEB-INF dir by looking up in the directory tree. This is used if no explicit docbase is set, but only files.- Parameters:
f- The path from which it will start looking
-
resolveFile
protected java.io.File resolveFile(java.lang.String s)
Resolves the relative or absolute pathname correctly in both Ant and command-line situations. If Ant launched us, we should use the basedir of the current project to resolve relative paths. See Bugzilla 35571.- Parameters:
s- The file- Returns:
- The file resolved
-
-