org.apache.jasper

Class JspC

Implemented Interfaces:
Options

public class JspC
extends java.lang.Object
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="jasper2" >
      <classpath>
          <pathelement location="${java.home}/../lib/tools.jar"/>
          <fileset dir="${ENV.CATALINA_HOME}/server/lib">
              <include name="*.jar"/>
          </fileset>
          <fileset dir="${ENV.CATALINA_HOME}/common/lib">
              <include name="*.jar"/>
          </fileset>
          <path refid="myjars"/>
       </classpath>
  </taskdef>

  <jasper2 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" />
 

Authors:
Danno Ferrin
Pierre Delisle
Costin Manolache
Yoav Shapira

Field Summary

static String
DEFAULT_IE_CLASS_ID

Method Summary

protected void
addExtension(String extension)
Adds the given file extension to the list of extensions handled as JSP files.
void
execute()
boolean
genStringAsCharArray()
Indicates whether text strings are to be generated as char arrays.
void
generateWebMapping(String file, JspCompilationContext clctxt)
int
getCheckInterval()
Background compilation check intervals in seconds
boolean
getClassDebugInfo()
String
getClassPath()
String
getCompiler()
Compiler to use.
String
getCompilerSourceVM()
String
getCompilerTargetVM()
boolean
getDevelopment()
Is Jasper being used in development mode?
boolean
getErrorOnUseBeanInvalidClassAttribute()
List
getExtensions()
Returns the list of file extensions that are treated as JSP files.
boolean
getFork()
String
getIeClassId()
Gets the class-id value that is sent to Internet Explorer when using tags.
String
getJavaEncoding()
Returns the encoding to use for java files.
String
getJspCompilerPath()
Class
getJspCompilerPlugin()
JspConfig
getJspConfig()
Obtain JSP configuration informantion specified in web.xml.
boolean
getKeepGenerated()
boolean
getMappedFile()
Are we supporting HTML mapped servlets?
Object
getProtectionDomain()
boolean
getReloading()
JSP reloading check ?
File
getScratchDir()
boolean
getSendErrorToClient()
TagPluginManager
getTagPluginManager()
int
getTagPoolSize()
TldLocationsCache
getTldLocationsCache()
boolean
getTrimSpaces()
boolean
isPoolingEnabled()
boolean
isSmapDumped()
Should SMAP info for JSR45 debugging be dumped to a file?
boolean
isSmapSuppressed()
Is the generation of SMAP info for JSR45 debuggin suppressed?
boolean
isXpoweredBy()
static void
main(arg[] )
protected void
mergeIntoWebXml()
Include the generated web.xml inside the webapp's web.xml.
void
scanFiles(File base)
Locate all jsp files in the webapp.
void
setAddWebXmlMappings(boolean b)
void
setArgs(String[] arg)
void
setClassDebugInfo(boolean b)
void
setClassName(String p)
Class name of the generated file ( without package ).
void
setClassPath(String s)
void
setCompile(boolean b)
void
setCompiler(String c)
void
setCompilerSourceVM(String vm)
void
setCompilerTargetVM(String vm)
void
setErrorOnUseBeanInvalidClassAttribute(boolean b)
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 tags.
void
setJavaEncoding(String encodingName)
Sets the encoding to use for java files.
void
setJspFiles(String jspFiles)
void
setListErrors(boolean b)
void
setOutputDir(String s)
void
setPackage(String p)
void
setPoolingEnabled(boolean poolingEnabled)
void
setTrimSpaces(boolean ts)
void
setUriroot(String s)
Base dir for the webapp.
void
setValidateXml(boolean b)
void
setVerbose(int level)
void
setWebXml(String s)
File where we generate a complete web.xml with the class definitions.
void
setWebXmlFragment(String s)
File where we generate a web.xml fragment with the class definitions.
void
setXpoweredBy(boolean xpoweredBy)

Field Details

DEFAULT_IE_CLASS_ID

public static final String DEFAULT_IE_CLASS_ID

Method Details

addExtension

protected void addExtension(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"


execute

public void execute()
            throws JasperException


genStringAsCharArray

public boolean genStringAsCharArray()
Indicates whether text strings are to be generated as char arrays.
Specified by:
genStringAsCharArray in interface Options

Returns:
true if text strings are to be generated as char arrays, false otherwise


generateWebMapping

public void generateWebMapping(String file,
                               JspCompilationContext clctxt)
            throws IOException


getCheckInterval

public int getCheckInterval()
Background compilation check intervals in seconds
Specified by:
getCheckInterval in interface Options


getClassDebugInfo

public boolean getClassDebugInfo()
Specified by:
getClassDebugInfo in interface Options


getClassPath

public String getClassPath()
Specified by:
getClassPath in interface Options


getCompiler

public String getCompiler()
Compiler to use.
Specified by:
getCompiler in interface Options


getCompilerSourceVM

public String getCompilerSourceVM()
Specified by:
getCompilerSourceVM in interface Options

See Also:
Options


getCompilerTargetVM

public String getCompilerTargetVM()
Specified by:
getCompilerTargetVM in interface Options

See Also:
Options


getDevelopment

public boolean getDevelopment()
Is Jasper being used in development mode?
Specified by:
getDevelopment in interface Options


getErrorOnUseBeanInvalidClassAttribute

public boolean getErrorOnUseBeanInvalidClassAttribute()
Specified by:
getErrorOnUseBeanInvalidClassAttribute in interface Options


getExtensions

public List getExtensions()
Returns the list of file extensions that are treated as JSP files.

Returns:
The list of extensions


getFork

public boolean getFork()
Specified by:
getFork in interface Options


getIeClassId

public String getIeClassId()
Gets the class-id value that is sent to Internet Explorer when using tags.
Specified by:
getIeClassId in interface Options

Returns:
Class-id value


getJavaEncoding

public String getJavaEncoding()
Returns the encoding to use for java files. The default is UTF-8.
Specified by:
getJavaEncoding in interface Options

Returns:
String The encoding


getJspCompilerPath

public String getJspCompilerPath()


getJspCompilerPlugin

public Class getJspCompilerPlugin()


getJspConfig

public JspConfig getJspConfig()
Obtain JSP configuration informantion specified in web.xml.
Specified by:
getJspConfig in interface Options


getKeepGenerated

public boolean getKeepGenerated()
Specified by:
getKeepGenerated in interface Options


getMappedFile

public boolean getMappedFile()
Are we supporting HTML mapped servlets?
Specified by:
getMappedFile in interface Options


getProtectionDomain

public Object getProtectionDomain()


getReloading

public boolean getReloading()
JSP reloading check ?
Specified by:
getReloading in interface Options


getScratchDir

public File getScratchDir()
Specified by:
getScratchDir in interface Options


getSendErrorToClient

public boolean getSendErrorToClient()
Specified by:
getSendErrorToClient in interface Options


getTagPluginManager

public TagPluginManager getTagPluginManager()
Specified by:
getTagPluginManager in interface Options


getTagPoolSize

public int getTagPoolSize()


getTldLocationsCache

public TldLocationsCache getTldLocationsCache()
Specified by:
getTldLocationsCache in interface Options


getTrimSpaces

public boolean getTrimSpaces()
Specified by:
getTrimSpaces in interface Options


isPoolingEnabled

public boolean isPoolingEnabled()
Specified by:
isPoolingEnabled in interface Options


isSmapDumped

public boolean isSmapDumped()
Should SMAP info for JSR45 debugging be dumped to a file?
Specified by:
isSmapDumped in interface Options


isSmapSuppressed

public boolean isSmapSuppressed()
Is the generation of SMAP info for JSR45 debuggin suppressed?
Specified by:
isSmapSuppressed in interface Options


isXpoweredBy

public boolean isXpoweredBy()
Specified by:
isXpoweredBy in interface Options


main

public static void main(arg[] )


mergeIntoWebXml

protected void mergeIntoWebXml()
            throws IOException
Include the generated web.xml inside the webapp's web.xml.


scanFiles

public void scanFiles(File base)
            throws JasperException
Locate all jsp files in the webapp. Used if no explicit jsps are specified.


setAddWebXmlMappings

public void setAddWebXmlMappings(boolean b)


setArgs

public void setArgs(String[] arg)
            throws JasperException


setClassDebugInfo

public void setClassDebugInfo(boolean b)


setClassName

public void setClassName(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 ?


setClassPath

public void setClassPath(String s)


setCompile

public void setCompile(boolean b)


setCompiler

public void setCompiler(String c)


setCompilerSourceVM

public void setCompilerSourceVM(String vm)

See Also:
Options


setCompilerTargetVM

public void setCompilerTargetVM(String vm)

See Also:
Options


setErrorOnUseBeanInvalidClassAttribute

public void setErrorOnUseBeanInvalidClassAttribute(boolean b)


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


setIeClassId

public void setIeClassId(String ieClassId)
Sets the class-id value to be sent to Internet Explorer when using tags.

Parameters:
ieClassId - Class-id value


setJavaEncoding

public void setJavaEncoding(String encodingName)
Sets the encoding to use for java files.

Parameters:
encodingName - The name, e.g. "UTF-8"


setJspFiles

public void setJspFiles(String jspFiles)


setListErrors

public void setListErrors(boolean b)


setOutputDir

public void setOutputDir(String s)


setPackage

public void setPackage(String p)


setPoolingEnabled

public void setPoolingEnabled(boolean poolingEnabled)


setTrimSpaces

public void setTrimSpaces(boolean ts)


setUriroot

public void setUriroot(String s)
Base dir for the webapp. Used to generate class names and resolve includes


setValidateXml

public void setValidateXml(boolean b)


setVerbose

public void setVerbose(int level)


setWebXml

public void setWebXml(String s)
File where we generate a complete web.xml with the class definitions.


setWebXmlFragment

public void setWebXmlFragment(String s)
File where we generate a web.xml fragment with the class definitions.


setXpoweredBy

public void setXpoweredBy(boolean xpoweredBy)


Copyright B) 2000 Apache Software Foundation. All Rights Reserved.