class Parser extends java.lang.Object implements TagConstants
| Modifier and Type | Field and Description |
|---|---|
private JspCompilationContext |
ctxt |
private boolean |
directivesOnly |
private ErrorDispatcher |
err |
private boolean |
errorOnUndeclaredNamespace |
private boolean |
isTagFile |
private java.net.URL |
jarFileUrl |
private static java.lang.String |
JAVAX_BODY_CONTENT_PARAM |
private static java.lang.String |
JAVAX_BODY_CONTENT_PLUGIN |
private static java.lang.String |
JAVAX_BODY_CONTENT_TEMPLATE_TEXT |
private PageInfo |
pageInfo |
private ParserController |
parserController |
private JspReader |
reader |
private int |
scriptlessCount |
private Mark |
start |
ATTRIBUTE_ACTION, ATTRIBUTE_DIRECTIVE_ACTION, BODY_ACTION, DECLARATION_ACTION, DIRECTIVE_ACTION, DOBODY_ACTION, ELEMENT_ACTION, EXPRESSION_ACTION, FALLBACK_ACTION, FORWARD_ACTION, GET_PROPERTY_ACTION, INCLUDE_ACTION, INCLUDE_DIRECTIVE_ACTION, INVOKE_ACTION, JSP_ATTRIBUTE_ACTION, JSP_ATTRIBUTE_DIRECTIVE_ACTION, JSP_BODY_ACTION, JSP_DECLARATION_ACTION, JSP_DOBODY_ACTION, JSP_ELEMENT_ACTION, JSP_EXPRESSION_ACTION, JSP_FALLBACK_ACTION, JSP_FORWARD_ACTION, JSP_GET_PROPERTY_ACTION, JSP_INCLUDE_ACTION, JSP_INCLUDE_DIRECTIVE_ACTION, JSP_INVOKE_ACTION, JSP_OUTPUT_ACTION, JSP_PAGE_DIRECTIVE_ACTION, JSP_PARAM_ACTION, JSP_PARAMS_ACTION, JSP_PLUGIN_ACTION, JSP_ROOT_ACTION, JSP_SCRIPTLET_ACTION, JSP_SET_PROPERTY_ACTION, JSP_TAG_DIRECTIVE_ACTION, JSP_TAGLIB_DIRECTIVE_ACTION, JSP_TEXT_ACTION, JSP_TEXT_ACTION_END, JSP_URI, JSP_USE_BEAN_ACTION, JSP_VARIABLE_DIRECTIVE_ACTION, OUTPUT_ACTION, PAGE_DIRECTIVE_ACTION, PARAM_ACTION, PARAMS_ACTION, PLUGIN_ACTION, ROOT_ACTION, SCRIPTLET_ACTION, SET_PROPERTY_ACTION, TAG_DIRECTIVE_ACTION, TAGLIB_DIRECTIVE_ACTION, TEXT_ACTION, URN_JSPTAGDIR, URN_JSPTLD, USE_BEAN_ACTION, VARIABLE_DIRECTIVE_ACTION| Modifier | Constructor and Description |
|---|---|
private |
Parser(ParserController pc,
JspReader reader,
boolean isTagFile,
boolean directivesOnly,
java.net.URL jarFileUrl,
boolean hasBom)
The constructor
|
| Modifier and Type | Method and Description |
|---|---|
private void |
addInclude(Node parent,
java.util.List files)
Add a list of files.
|
private void |
checkUnbalancedEndTag() |
private java.lang.String |
getAttributeBodyType(Node n,
java.lang.String name)
Determine the body type of
|
static Node.Nodes |
parse(ParserController pc,
java.lang.String path,
JspReader reader,
Node parent,
boolean isTagFile,
boolean directivesOnly,
java.net.URL jarFileUrl,
java.lang.String pageEnc,
java.lang.String jspConfigPageEnc,
boolean isDefaultPageEncoding,
boolean hasBom)
The main entry for Parser
|
private boolean |
parseAttribute(org.xml.sax.helpers.AttributesImpl attrs)
Attribute ::= Name S? Eq S?
( '"<%=' RTAttributeValueDouble
| '"' AttributeValueDouble
| "'<%=" RTAttributeValueSingle
| "'" AttributeValueSingle
}
Note: JSP and XML spec does not allow while spaces around Eq.
|
private void |
parseAttributeDirective(Node parent) |
(package private) org.xml.sax.Attributes |
parseAttributes()
Attributes ::= (S Attribute)* S?
|
static org.xml.sax.Attributes |
parseAttributes(ParserController pc,
JspReader reader)
Parse Attributes for a reader, provided for external use
|
private java.lang.String |
parseAttributeValue(java.lang.String watch)
AttributeValueDouble ::= (QuotedChar - '"')*
('"' |
|
private void |
parseBody(Node parent,
java.lang.String tag,
java.lang.String bodyType) |
private void |
parseComment(Node parent) |
private boolean |
parseCustomTag(Node parent) |
private void |
parseDeclaration(Node parent) |
private void |
parseDirective(Node parent) |
private void |
parseDoBody(Node parent) |
private void |
parseElement(Node parent) |
private void |
parseElements(Node parent) |
private void |
parseElementsScriptless(Node parent) |
private void |
parseElementsTemplateText(Node parent) |
private void |
parseELExpression(Node parent,
java.lang.String typeEL) |
private void |
parseEmptyBody(Node parent,
java.lang.String tag) |
private void |
parseExpression(Node parent) |
private void |
parseFallBack(Node parent) |
private void |
parseForward(Node parent) |
private void |
parseGetProperty(Node parent) |
private void |
parseInclude(Node parent) |
private void |
parseIncludeDirective(Node parent) |
private void |
parseInvoke(Node parent) |
private boolean |
parseJspAttributeAndBody(Node parent,
java.lang.String tag,
java.lang.String bodyType)
Attempts to parse 'JspAttributeAndBody' production.
|
private void |
parseJspBody(Node parent,
java.lang.String bodyType) |
private void |
parseJspParams(Node parent) |
private java.lang.String |
parseName()
Name ::= (Letter | '_' | ':') (Letter | Digit | '.' | '_' | '-' | ':')*
|
private void |
parseNamedAttributes(Node parent) |
private void |
parseOptionalBody(Node parent,
java.lang.String tag,
java.lang.String bodyType) |
private void |
parsePageDirective(Node parent) |
private void |
parseParam(Node parent)
Param ::= ' |
private void |
parsePlugin(Node parent) |
private void |
parsePluginTags(Node parent) |
private java.lang.String |
parseQuoted(java.lang.String tx)
QuotedChar ::= '''
| '"'
| '\\'
| '\"'
| "\'"
| '\>'
| '\$'
| '\#'
| Char
|
private void |
parseScriptlet(Node parent) |
private java.lang.String |
parseScriptText(java.lang.String tx) |
private void |
parseSetProperty(Node parent) |
private void |
parseStandardAction(Node parent) |
private void |
parseTagDependentBody(Node parent,
java.lang.String tag)
TagDependentBody :=
|
private void |
parseTagDirective(Node parent) |
private void |
parseTagFileDirectives(Node parent) |
private void |
parseTaglibDirective(Node parent) |
private void |
parseTemplateText(Node parent) |
private void |
parseUseBean(Node parent) |
private void |
parseVariableDirective(Node parent) |
private void |
parseXMLDeclaration(Node parent) |
private void |
parseXMLDirective(Node parent) |
private void |
parseXMLExpression(Node parent) |
private void |
parseXMLScriptlet(Node parent) |
private void |
parseXMLTemplateText(Node parent) |
private void |
processIncludeDirective(java.lang.String file,
Node parent) |
private ParserController parserController
private JspCompilationContext ctxt
private JspReader reader
private Mark start
private ErrorDispatcher err
private int scriptlessCount
private boolean isTagFile
private boolean directivesOnly
private java.net.URL jarFileUrl
private PageInfo pageInfo
private boolean errorOnUndeclaredNamespace
private static final java.lang.String JAVAX_BODY_CONTENT_PARAM
private static final java.lang.String JAVAX_BODY_CONTENT_PLUGIN
private static final java.lang.String JAVAX_BODY_CONTENT_TEMPLATE_TEXT
private Parser(ParserController pc, JspReader reader, boolean isTagFile, boolean directivesOnly, java.net.URL jarFileUrl, boolean hasBom)
public static Node.Nodes parse(ParserController pc, java.lang.String path, JspReader reader, Node parent, boolean isTagFile, boolean directivesOnly, java.net.URL jarFileUrl, java.lang.String pageEnc, java.lang.String jspConfigPageEnc, boolean isDefaultPageEncoding, boolean hasBom) throws JasperException
pc - The ParseController, use for getting other objects in compiler
and for parsing included pagesreader - To read the pageparent - The parent node to this page, null for top level pageJasperExceptionorg.xml.sax.Attributes parseAttributes()
throws JasperException
JasperExceptionpublic static org.xml.sax.Attributes parseAttributes(ParserController pc, JspReader reader) throws JasperException
JasperExceptionprivate boolean parseAttribute(org.xml.sax.helpers.AttributesImpl attrs)
throws JasperException
JasperExceptionprivate java.lang.String parseName()
throws JasperException
JasperExceptionprivate java.lang.String parseAttributeValue(java.lang.String watch)
throws JasperException
JasperExceptionprivate java.lang.String parseQuoted(java.lang.String tx)
private java.lang.String parseScriptText(java.lang.String tx)
private void processIncludeDirective(java.lang.String file,
Node parent)
throws JasperException
JasperExceptionprivate void parsePageDirective(Node parent) throws JasperException
JasperExceptionprivate void parseIncludeDirective(Node parent) throws JasperException
JasperExceptionprivate void addInclude(Node parent, java.util.List files) throws JasperException
JasperExceptionprivate void parseTaglibDirective(Node parent) throws JasperException
JasperExceptionprivate void parseDirective(Node parent) throws JasperException
JasperExceptionprivate void parseXMLDirective(Node parent) throws JasperException
JasperExceptionprivate void parseTagDirective(Node parent) throws JasperException
JasperExceptionprivate void parseAttributeDirective(Node parent) throws JasperException
JasperExceptionprivate void parseVariableDirective(Node parent) throws JasperException
JasperExceptionprivate void parseComment(Node parent) throws JasperException
JasperExceptionprivate void parseDeclaration(Node parent) throws JasperException
JasperExceptionprivate void parseXMLDeclaration(Node parent) throws JasperException
JasperExceptionprivate void parseExpression(Node parent) throws JasperException
JasperExceptionprivate void parseXMLExpression(Node parent) throws JasperException
JasperExceptionprivate void parseELExpression(Node parent, java.lang.String typeEL) throws JasperException
JasperExceptionprivate void parseScriptlet(Node parent) throws JasperException
JasperExceptionprivate void parseXMLScriptlet(Node parent) throws JasperException
JasperExceptionprivate void parseParam(Node parent) throws JasperException
JasperExceptionprivate void parseInclude(Node parent) throws JasperException
JasperExceptionprivate void parseForward(Node parent) throws JasperException
JasperExceptionprivate void parseInvoke(Node parent) throws JasperException
JasperExceptionprivate void parseDoBody(Node parent) throws JasperException
JasperExceptionprivate void parseElement(Node parent) throws JasperException
JasperExceptionprivate void parseGetProperty(Node parent) throws JasperException
JasperExceptionprivate void parseSetProperty(Node parent) throws JasperException
JasperExceptionprivate void parseEmptyBody(Node parent, java.lang.String tag) throws JasperException
JasperExceptionprivate void parseUseBean(Node parent) throws JasperException
JasperExceptionprivate void parseOptionalBody(Node parent, java.lang.String tag, java.lang.String bodyType) throws JasperException
JasperExceptionprivate boolean parseJspAttributeAndBody(Node parent, java.lang.String tag, java.lang.String bodyType) throws JasperException
JasperExceptionprivate void parseJspParams(Node parent) throws JasperException
JasperExceptionprivate void parseFallBack(Node parent) throws JasperException
JasperExceptionprivate void parsePlugin(Node parent) throws JasperException
JasperExceptionprivate void parsePluginTags(Node parent) throws JasperException
JasperExceptionprivate void parseStandardAction(Node parent) throws JasperException
JasperExceptionprivate boolean parseCustomTag(Node parent) throws JasperException
JasperExceptionprivate void parseTemplateText(Node parent) throws JasperException
JasperExceptionprivate void parseXMLTemplateText(Node parent) throws JasperException
JasperExceptionprivate void parseElements(Node parent) throws JasperException
JasperExceptionprivate void parseElementsScriptless(Node parent) throws JasperException
JasperExceptionprivate void parseElementsTemplateText(Node parent) throws JasperException
JasperExceptionprivate void checkUnbalancedEndTag()
throws JasperException
JasperExceptionprivate void parseTagDependentBody(Node parent, java.lang.String tag) throws JasperException
JasperExceptionprivate void parseJspBody(Node parent, java.lang.String bodyType) throws JasperException
JasperExceptionprivate void parseBody(Node parent, java.lang.String tag, java.lang.String bodyType) throws JasperException
JasperExceptionprivate void parseNamedAttributes(Node parent) throws JasperException
JasperExceptionprivate java.lang.String getAttributeBodyType(Node n, java.lang.String name)
private void parseTagFileDirectives(Node parent) throws JasperException
JasperException