public class JspC extends org.apache.tools.ant.Task implements Options
<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" />
Modifier and Type | Field and Description |
---|---|
protected boolean |
addWebXmlMappings |
protected static int |
ALL_WEBXML |
protected int |
argPos |
protected String[] |
args |
protected boolean |
blockExternal |
protected Map<String,TagLibraryInfo> |
cache |
protected boolean |
caching |
protected boolean |
classDebugInfo |
protected String |
classPath |
protected boolean |
compile |
protected String |
compiler |
protected String |
compilerSourceVM |
protected String |
compilerTargetVM |
protected JspCServletContext |
context
The servlet context.
|
protected static int |
DEFAULT_DIE_LEVEL |
static String |
DEFAULT_IE_CLASS_ID |
protected int |
dieLevel |
protected boolean |
errorOnUseBeanInvalidClassAttribute
Needs better documentation, this data member does.
|
protected List<String> |
extensions
The file extensions to be handled as JSP files.
|
protected boolean |
failOnError
Throw an exception if there's a compilation error, or swallow it.
|
protected boolean |
fullstop |
protected boolean |
genStringAsCharArray |
protected boolean |
helpNeeded |
protected String |
ieClassId |
protected static int |
INC_WEBXML |
protected static Set<String> |
insertBefore |
protected String |
javaEncoding
The java file encoding.
|
protected JspConfig |
jspConfig |
protected static String |
LIST_ERRORS |
protected boolean |
listErrors |
protected ClassLoader |
loader |
protected Writer |
mapout |
protected boolean |
mappedFile |
protected CharArrayWriter |
mappingout |
protected static int |
NO_DIE_LEVEL |
protected List<String> |
pages
The pages.
|
protected boolean |
poolingEnabled |
protected boolean |
quoteAttributeEL |
protected JspRuntimeContext |
rctxt
The runtime context.
|
protected TldScanner |
scanner |
protected File |
scratchDir |
protected CharArrayWriter |
servletout |
protected static String |
SHOW_SUCCESS |
protected boolean |
showSuccess |
protected boolean |
smapDumped |
protected boolean |
smapSuppressed |
protected boolean |
strictQuoteEscaping |
protected static String |
SWITCH_ADD_WEBAPP_XML_MAPPINGS |
protected static String |
SWITCH_CACHE |
protected static String |
SWITCH_CLASS_NAME |
protected static String |
SWITCH_CLASSPATH |
protected static String |
SWITCH_COMPILE |
protected static String |
SWITCH_DIE |
protected static String |
SWITCH_DUMP_SMAP |
protected static String |
SWITCH_ENCODING |
protected static String |
SWITCH_FILE_WEBAPP |
protected static String |
SWITCH_FULL_STOP |
protected static String |
SWITCH_HELP |
protected static String |
SWITCH_MAPPED |
protected static String |
SWITCH_NO_BLOCK_EXTERNAL |
protected static String |
SWITCH_NO_QUOTE_ATTRIBUTE_EL |
protected static String |
SWITCH_NO_STRICT_QUOTE_ESCAPING |
protected static String |
SWITCH_OUTPUT_DIR |
protected static String |
SWITCH_PACKAGE_NAME |
protected static String |
SWITCH_POOLING |
protected static String |
SWITCH_QUOTE_ATTRIBUTE_EL |
protected static String |
SWITCH_SMAP |
protected static String |
SWITCH_SOURCE |
protected static String |
SWITCH_TARGET |
protected static String |
SWITCH_TRIM_SPACES |
protected static String |
SWITCH_URI_BASE |
protected static String |
SWITCH_URI_ROOT |
protected static String |
SWITCH_VALIDATE_TLD |
protected static String |
SWITCH_VALIDATE_XML |
protected static String |
SWITCH_VERBOSE |
protected static String |
SWITCH_WEBAPP_INC |
protected static String |
SWITCH_WEBAPP_XML |
protected static String |
SWITCH_WEBAPP_XML_ENCODING |
protected static String |
SWITCH_XPOWERED_BY |
protected TagPluginManager |
tagPluginManager |
protected String |
targetClassName |
protected String |
targetPackage |
protected TldCache |
tldCache
Cache for the TLD locations
|
protected boolean |
trimSpaces |
protected String |
uriBase |
protected String |
uriRoot |
protected boolean |
validateTld |
protected boolean |
validateXml |
protected boolean |
verbose |
protected String |
webxmlEncoding |
protected String |
webxmlFile |
protected int |
webxmlLevel |
protected boolean |
xpoweredBy |
Constructor and Description |
---|
JspC() |
Modifier and Type | Method and Description |
---|---|
protected void |
addExtension(String extension)
Adds the given file extension to the
list of extensions handled as JSP files.
|
protected void |
completeWebXml() |
void |
execute()
Executes the compilation.
|
void |
generateWebMapping(String file,
JspCompilationContext clctxt)
Adds servlet declaration and mapping for the JSP page servlet to the
generated web.xml fragment.
|
boolean |
genStringAsCharArray()
Indicates whether text strings are to be generated as char arrays.
|
Map<String,TagLibraryInfo> |
getCache()
The web-application wide cache for the TagLibraryInfo tag library
descriptors, used if
Options.isCaching() returns true . |
int |
getCheckInterval()
In JspC this always returns
0 . |
boolean |
getClassDebugInfo() |
String |
getClassPath() |
String |
getCompiler()
Compiler to use.
|
String |
getCompilerClassName() |
String |
getCompilerSourceVM() |
String |
getCompilerTargetVM() |
boolean |
getDevelopment()
In JspC this always returns
false . |
boolean |
getDisplaySourceFragment()
In JspC this always returns
true . |
boolean |
getErrorOnUseBeanInvalidClassAttribute()
Returns true if Jasper issues a compilation error instead of a runtime
Instantiation error if the class attribute specified in useBean action
is invalid.
|
List<String> |
getExtensions()
Returns the list of file extensions
that are treated as JSP files.
|
boolean |
getFailOnError() |
boolean |
getFork()
The boolean flag to tell Ant whether to fork JSP page compilations.
|
String |
getIeClassId()
Gets the class-id value that is sent to Internet Explorer when using
<jsp:plugin> tags.
|
String |
getJavaEncoding()
Returns the encoding to use for
java files.
|
JspConfig |
getJspConfig() |
int |
getJspIdleTimeout() |
boolean |
getKeepGenerated()
In JspC this always returns
true . |
boolean |
getMappedFile() |
int |
getMaxLoadedJsps()
The maximum number of loaded jsps per web-application.
|
int |
getModificationTestInterval()
In JspC this always returns
0 . |
boolean |
getQuoteAttributeEL() |
boolean |
getRecompileOnFail()
In JspC this always returns
false . |
File |
getScratchDir() |
boolean |
getStrictQuoteEscaping() |
TagPluginManager |
getTagPluginManager() |
TldCache |
getTldCache()
The cache that maps URIs, resource paths and parsed TLD files for the
various tag libraries 'exposed' by the web application.
|
boolean |
getTrimSpaces() |
protected ClassLoader |
initClassLoader()
Initializes the classloader as/if needed for the given
compilation context.
|
protected void |
initServletContext(ClassLoader classLoader) |
protected void |
initTldScanner(JspCServletContext context,
ClassLoader classLoader) |
protected void |
initWebXml() |
boolean |
isBlockExternal() |
boolean |
isCaching() |
boolean |
isPoolingEnabled() |
boolean |
isSmapDumped()
This setting is ignored if suppressSmap() is
true . |
boolean |
isSmapSuppressed() |
boolean |
isValidateTld() |
boolean |
isValidateXml() |
boolean |
isXpoweredBy() |
protected void |
locateUriRoot(File f)
Find the WEB-INF dir by looking up in the directory tree.
|
static void |
main(String[] arg) |
protected void |
mergeIntoWebXml()
Include the generated web.xml inside the webapp's web.xml.
|
protected TldScanner |
newTldScanner(JspCServletContext context,
boolean namespaceAware,
boolean validate,
boolean blockExternal) |
protected String |
nextArg() |
protected String |
nextFile() |
protected void |
processFile(String file) |
protected File |
resolveFile(String s)
Resolves the relative or absolute pathname correctly
in both Ant and command-line situations.
|
void |
scanFiles(File base)
Locate all jsp files in the webapp.
|
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.
|
void |
setArgs(String[] arg)
Apply command-line arguments.
|
void |
setBlockExternal(boolean b) |
void |
setCaching(boolean caching)
Sets the option to enable caching.
|
void |
setClassDebugInfo(boolean b)
Sets the option to include debug information in compiled class.
|
void |
setClassName(String p)
Class name of the generated file ( without package ).
|
void |
setClassPath(String s)
Sets the classpath used while compiling the servlets generated from JSP
files
|
void |
setCompile(boolean b)
Sets the compile flag.
|
void |
setCompiler(String c)
Sets the option to determine what compiler to use.
|
void |
setCompilerSourceVM(String vm)
Sets the compiler source VM.
|
void |
setCompilerTargetVM(String vm)
Sets the compiler target VM.
|
void |
setErrorOnUseBeanInvalidClassAttribute(boolean b)
Sets the option to issue a compilation error if the class attribute
specified in useBean action is invalid.
|
void |
setFailOnError(boolean b)
Sets the option that throws an exception in case of a compilation error.
|
void |
setGenStringAsCharArray(boolean genStringAsCharArray)
Determines whether text strings are to be generated as char arrays,
which improves performance in some cases.
|
void |
setIeClassId(String ieClassId)
Sets the class-id value to be sent to Internet Explorer when using
<jsp:plugin> tags.
|
void |
setJavaEncoding(String encodingName)
Sets the encoding to use for
java files.
|
void |
setJspFiles(String jspFiles)
Parses comma-separated list of JSP files to be processed.
|
void |
setListErrors(boolean b) |
void |
setMappedFile(boolean b) |
void |
setOutputDir(String s) |
void |
setPackage(String p)
Sets the package name to be used for the generated servlet classes.
|
void |
setPoolingEnabled(boolean poolingEnabled)
Sets the option to enable the tag handler pooling.
|
void |
setQuoteAttributeEL(boolean b) |
void |
setSmapDumped(boolean smapDumped)
Sets smapDumped flag.
|
void |
setSmapSuppressed(boolean smapSuppressed)
Sets smapSuppressed flag.
|
void |
setStrictQuoteEscaping(boolean b) |
void |
setTrimSpaces(boolean ts)
Sets the option to trim white spaces between directives or actions.
|
void |
setUriroot(String s)
Base dir for the webapp.
|
void |
setValidateTld(boolean b) |
void |
setValidateXml(boolean b) |
void |
setVerbose(int level)
Sets the verbosity level.
|
void |
setWebXml(String s)
File where we generate a complete web.xml with the class definitions.
|
void |
setWebXmlEncoding(String encoding)
Sets the encoding to be used to read and write web.xml files.
|
void |
setWebXmlFragment(String s)
File where we generate a web.xml fragment with the class definitions.
|
void |
setXpoweredBy(boolean xpoweredBy)
Sets the option to enable generation of X-Powered-By response header.
|
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
public static final String DEFAULT_IE_CLASS_ID
protected static final String SWITCH_VERBOSE
protected static final String SWITCH_HELP
protected static final String SWITCH_OUTPUT_DIR
protected static final String SWITCH_PACKAGE_NAME
protected static final String SWITCH_CACHE
protected static final String SWITCH_CLASS_NAME
protected static final String SWITCH_FULL_STOP
protected static final String SWITCH_COMPILE
protected static final String SWITCH_SOURCE
protected static final String SWITCH_TARGET
protected static final String SWITCH_URI_BASE
protected static final String SWITCH_URI_ROOT
protected static final String SWITCH_FILE_WEBAPP
protected static final String SWITCH_WEBAPP_INC
protected static final String SWITCH_WEBAPP_XML
protected static final String SWITCH_WEBAPP_XML_ENCODING
protected static final String SWITCH_ADD_WEBAPP_XML_MAPPINGS
protected static final String SWITCH_MAPPED
protected static final String SWITCH_XPOWERED_BY
protected static final String SWITCH_TRIM_SPACES
protected static final String SWITCH_CLASSPATH
protected static final String SWITCH_DIE
protected static final String SWITCH_POOLING
protected static final String SWITCH_ENCODING
protected static final String SWITCH_SMAP
protected static final String SWITCH_DUMP_SMAP
protected static final String SWITCH_VALIDATE_TLD
protected static final String SWITCH_VALIDATE_XML
protected static final String SWITCH_NO_BLOCK_EXTERNAL
protected static final String SWITCH_NO_STRICT_QUOTE_ESCAPING
protected static final String SWITCH_QUOTE_ATTRIBUTE_EL
protected static final String SWITCH_NO_QUOTE_ATTRIBUTE_EL
protected static final String SHOW_SUCCESS
protected static final String LIST_ERRORS
protected static final int INC_WEBXML
protected static final int ALL_WEBXML
protected static final int DEFAULT_DIE_LEVEL
protected static final int NO_DIE_LEVEL
protected String classPath
protected ClassLoader loader
protected boolean trimSpaces
protected boolean genStringAsCharArray
protected boolean validateTld
protected boolean validateXml
protected boolean blockExternal
protected boolean strictQuoteEscaping
protected boolean quoteAttributeEL
protected boolean xpoweredBy
protected boolean mappedFile
protected boolean poolingEnabled
protected File scratchDir
protected String ieClassId
protected String targetPackage
protected String targetClassName
protected String uriBase
protected String uriRoot
protected int dieLevel
protected boolean helpNeeded
protected boolean compile
protected boolean smapSuppressed
protected boolean smapDumped
protected boolean caching
protected final Map<String,TagLibraryInfo> cache
protected String compiler
protected String compilerTargetVM
protected String compilerSourceVM
protected boolean classDebugInfo
protected boolean failOnError
protected List<String> extensions
protected boolean errorOnUseBeanInvalidClassAttribute
protected String javaEncoding
protected String webxmlFile
protected int webxmlLevel
protected String webxmlEncoding
protected boolean addWebXmlMappings
protected Writer mapout
protected CharArrayWriter servletout
protected CharArrayWriter mappingout
protected JspCServletContext context
protected JspRuntimeContext rctxt
protected TldCache tldCache
protected JspConfig jspConfig
protected TagPluginManager tagPluginManager
protected TldScanner scanner
protected boolean verbose
protected boolean listErrors
protected boolean showSuccess
protected int argPos
protected boolean fullstop
protected String[] args
public static void main(String[] arg)
public void setArgs(String[] arg) throws JasperException
arg
- The argumentsJasperException
- JSPC errorpublic boolean getKeepGenerated()
true
.
getKeepGenerated
in interface Options
true
to keep the generated sourcepublic boolean getTrimSpaces()
getTrimSpaces
in interface Options
true
to trim white spaces between
directives or actions.public void setTrimSpaces(boolean ts)
ts
- New valuepublic boolean isPoolingEnabled()
isPoolingEnabled
in interface Options
true
if tag handler pooling is enabled,
false
otherwise.public void setPoolingEnabled(boolean poolingEnabled)
poolingEnabled
- New valuepublic boolean isXpoweredBy()
isXpoweredBy
in interface Options
true
to generate a X-Powered-By response header.public void setXpoweredBy(boolean xpoweredBy)
xpoweredBy
- New valuepublic boolean getDisplaySourceFragment()
true
.
getDisplaySourceFragment
in interface Options
true
to include a source fragment in exception
messages.public int getMaxLoadedJsps()
Options
getMaxLoadedJsps
in interface Options
public int getJspIdleTimeout()
getJspIdleTimeout
in interface Options
public boolean getErrorOnUseBeanInvalidClassAttribute()
getErrorOnUseBeanInvalidClassAttribute
in interface Options
true
to get an errorpublic void setErrorOnUseBeanInvalidClassAttribute(boolean b)
b
- New valuepublic boolean getMappedFile()
getMappedFile
in interface Options
true
if HTML mapped Servlets are supported.public void setMappedFile(boolean b)
public void setClassDebugInfo(boolean b)
b
- New valuepublic boolean getClassDebugInfo()
getClassDebugInfo
in interface Options
true
if debug information in included
in compiled classes.public boolean isCaching()
public void setCaching(boolean caching)
caching
- New valueOptions.isCaching()
public Map<String,TagLibraryInfo> getCache()
Options.isCaching()
returns true
.
Using this cache avoids the cost of repeating the parsing of a tag library descriptor XML file (performed by TagLibraryInfoImpl.parseTLD).
public int getCheckInterval()
0
.
getCheckInterval
in interface Options
public int getModificationTestInterval()
0
.
getModificationTestInterval
in interface Options
public boolean getRecompileOnFail()
false
.
getRecompileOnFail
in interface Options
true
if re-compile will occur on a failure.public boolean getDevelopment()
false
.
Main development flag, which enables detailed error reports with
sources, as well automatic recompilation of JSPs and tag files.
This setting should usually be false
when running
in production.getDevelopment
in interface Options
true
if Jasper is in development modepublic boolean isSmapSuppressed()
isSmapSuppressed
in interface Options
true
to suppress generation of SMAP info for
JSR45 debugging.public void setSmapSuppressed(boolean smapSuppressed)
smapSuppressed
- New valuepublic boolean isSmapDumped()
true
.isSmapDumped
in interface Options
true
to write SMAP info for JSR45 debugging to a
file.public void setSmapDumped(boolean smapDumped)
smapDumped
- New valueOptions.isSmapDumped()
public void setGenStringAsCharArray(boolean genStringAsCharArray)
genStringAsCharArray
- true if text strings are to be generated as
char arrays, false otherwisepublic boolean genStringAsCharArray()
genStringAsCharArray
in interface Options
true
if text strings are to be generated as char
arrays, false
otherwisepublic void setIeClassId(String ieClassId)
ieClassId
- Class-id valuepublic String getIeClassId()
getIeClassId
in interface Options
public File getScratchDir()
getScratchDir
in interface Options
public String getCompiler()
If null
(the default), the java compiler from Eclipse JDT
project, bundled with Tomcat, will be used. Otherwise, the
javac
task 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.
getCompiler
in interface Options
public void setCompiler(String c)
c
- New valueOptions.getCompiler()
public String getCompilerClassName()
getCompilerClassName
in interface Options
public String getCompilerTargetVM()
getCompilerTargetVM
in interface Options
public void setCompilerTargetVM(String vm)
vm
- New valueOptions.getCompilerTargetVM()
public String getCompilerSourceVM()
getCompilerSourceVM
in interface Options
public void setCompilerSourceVM(String vm)
vm
- New valueOptions.getCompilerSourceVM()
public TldCache getTldCache()
getTldCache
in interface Options
public String getJavaEncoding()
getJavaEncoding
in interface Options
public void setJavaEncoding(String encodingName)
encodingName
- The name, e.g. "UTF-8"public boolean getFork()
Is used only when Jasper uses an external java compiler (wrapped through
a javac
Apache Ant task).
public String getClassPath()
getClassPath
in interface Options
public void setClassPath(String s)
s
- New valuepublic List<String> getExtensions()
protected void addExtension(String extension)
extension
- The extension to add, e.g. "myjsp"public void setUriroot(String s)
s
- New valuepublic void setJspFiles(String jspFiles)
Each file is interpreted relative to uriroot, unless it is absolute, in which case it must start with uriroot.
jspFiles
- Comma-separated list of JSP files to be processedpublic void setCompile(boolean b)
b
- Flag valuepublic void setVerbose(int level)
level
- Positive means verbosepublic void setValidateTld(boolean b)
public boolean isValidateTld()
public void setValidateXml(boolean b)
public boolean isValidateXml()
public void setBlockExternal(boolean b)
public boolean isBlockExternal()
public void setStrictQuoteEscaping(boolean b)
public boolean getStrictQuoteEscaping()
getStrictQuoteEscaping
in interface Options
true
if the quote escaping required by section JSP.1.6 of
the JSP specification should be applied to scriplet expression.public void setQuoteAttributeEL(boolean b)
public boolean getQuoteAttributeEL()
getQuoteAttributeEL
in interface Options
true
if EL expressions used within attributes should have
the quoting rules in JSP.1.6 applied to the expression.public void setListErrors(boolean b)
public void setOutputDir(String s)
public void setPackage(String p)
p
- New valuepublic void setClassName(String p)
p
- New valuepublic void setWebXmlFragment(String s)
s
- New valuepublic void setWebXml(String s)
s
- New valuepublic void setWebXmlEncoding(String encoding)
If not specified, defaults to the platform default encoding.
encoding
- Encoding, e.g. "UTF-8".public void setAddWebXmlMappings(boolean b)
b
- true
to merge the fragment into the existing
web.xml file of the processed web application
({uriroot}/WEB-INF/web.xml), false
to keep the
generated web.xml fragmentpublic void setFailOnError(boolean b)
b
- New valuepublic boolean getFailOnError()
true
if an exception will be thrown
in case of a compilation error.public JspConfig getJspConfig()
getJspConfig
in interface Options
public TagPluginManager getTagPluginManager()
getTagPluginManager
in interface Options
public void generateWebMapping(String file, JspCompilationContext clctxt) throws IOException
file
- Context-relative path to the JSP file, e.g.
/index.jsp
clctxt
- Compilation context of the servletIOException
- An IO error occurredprotected void mergeIntoWebXml() throws IOException
IOException
- An IO error occurredprotected void processFile(String file) throws JasperException
JasperException
public void scanFiles(File base)
base
- Base pathpublic void execute()
execute
in class org.apache.tools.ant.Task
protected String nextArg()
protected String nextFile()
protected void initWebXml() throws JasperException
JasperException
protected void completeWebXml()
protected void initTldScanner(JspCServletContext context, ClassLoader classLoader)
protected TldScanner newTldScanner(JspCServletContext context, boolean namespaceAware, boolean validate, boolean blockExternal)
protected void initServletContext(ClassLoader classLoader) throws IOException, JasperException
IOException
JasperException
protected ClassLoader initClassLoader() throws IOException
IOException
- If an error occursprotected void locateUriRoot(File f)
f
- The path from which it will start lookingprotected File resolveFile(String s)
s
- The fileCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.