Author: konstantin.mishin
Date: 2010-01-14 10:34:15 -0500 (Thu, 14 Jan 2010)
New Revision: 16294
Modified:
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/FastHtmlParser.java
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/ParsingStateManager.java
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/nekko/NekkoParser.java
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/tidy/TidyParser.java
Log:
RFPL-237
porting RF-7344 to enterprise branch
Modified:
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/FastHtmlParser.java
===================================================================
---
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/FastHtmlParser.java 2010-01-14
15:27:05 UTC (rev 16293)
+++
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/FastHtmlParser.java 2010-01-14
15:34:15 UTC (rev 16294)
@@ -132,6 +132,13 @@
if (log.isDebugEnabled()) {
log.debug("Found <title> element");
}
+ } else if (context.getLastMatched() == stateManager.META) {
+ context.send();
+ haveHead = true;
+ haveHtml = true;
+ if (log.isDebugEnabled()) {
+ log.debug("Found <meta> element");
+ }
} else if (context.getLastMatched() == stateManager.BASE) {
context.send();
haveHead = true;
Modified:
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/ParsingStateManager.java
===================================================================
---
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/ParsingStateManager.java 2010-01-14
15:27:05 UTC (rev 16293)
+++
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/io/parser/ParsingStateManager.java 2010-01-14
15:34:15 UTC (rev 16294)
@@ -99,6 +99,8 @@
ParserState BASE = new KeywordState("base",ELEMENT);
+ ParserState META = new KeywordState("meta",ELEMENT);
+
// Html content
ParserState HTML = new KeywordState("tml",ELEMENT);
@@ -111,7 +113,7 @@
// Inicialize parsing states
DOCUMENT.nextStates = new ParserState[]{LT,DOCUMENT};
// after < possible ! & / or start element
- LT.nextStates = new
ParserState[]{EXCLAM,PISTART,CLOSINGELEMENT,H,TITLE,BASE,ELEMENT,DOCUMENT};
+ LT.nextStates = new
ParserState[]{EXCLAM,PISTART,CLOSINGELEMENT,H,META,TITLE,BASE,ELEMENT,DOCUMENT};
//
EXCLAM.nextStates = new ParserState[]{COMMENTSTART,CDATASTART,DOCTYPESTART,DOCUMENT};
// doctype declaration
@@ -156,6 +158,7 @@
H.nextStates = new ParserState[]{HEAD,HTML,ENDELEMENT,INELEMENT,ELEMENT,LT,DOCUMENT};
HEAD.nextStates = new ParserState[]{HEAD,ENDELEMENT,INELEMENT,ELEMENT};
HTML.nextStates = new ParserState[]{HTML,ENDELEMENT,INELEMENT,ELEMENT};
+ META.nextStates = new ParserState[]{META,ENDELEMENT,INELEMENT,ELEMENT};
TITLE.nextStates = new ParserState[]{TITLE,ENDELEMENT,INELEMENT,ELEMENT};
BASE.nextStates = new ParserState[]{BASE,ENDELEMENT,INELEMENT,ELEMENT};
}
Modified:
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/nekko/NekkoParser.java
===================================================================
---
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/nekko/NekkoParser.java 2010-01-14
15:27:05 UTC (rev 16293)
+++
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/nekko/NekkoParser.java 2010-01-14
15:34:15 UTC (rev 16294)
@@ -358,6 +358,7 @@
} else if (haveHead) {
// <title> or <base> in the head
if (!("title".equalsIgnoreCase(element.rawname) || "base"
+ .equalsIgnoreCase(element.rawname) || "meta"
.equalsIgnoreCase(element.rawname))) {
insertResources(element.prefix, element.uri);
}
@@ -506,6 +507,7 @@
if (haveHead) {
// <title> or <base> in the head
if (!("title".equalsIgnoreCase(name.rawname) || "base"
+ .equalsIgnoreCase(element.rawname) || "meta"
.equalsIgnoreCase(name.rawname))) {
insertResources(name.prefix, name.uri);
}
Modified:
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/tidy/TidyParser.java
===================================================================
---
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/tidy/TidyParser.java 2010-01-14
15:27:05 UTC (rev 16293)
+++
branches/enterprise/3.3.X/framework/impl/src/main/java/org/ajax4jsf/webapp/tidy/TidyParser.java 2010-01-14
15:34:15 UTC (rev 16294)
@@ -232,6 +232,7 @@
if (child instanceof Element) {
String nodeName = ((Element) child).getNodeName();
if (!("title".equalsIgnoreCase(nodeName) || "base"
+ .equalsIgnoreCase(nodeName) || "meta"
.equalsIgnoreCase(nodeName))) {
break;
}