本文整理汇总了Java中org.apache.xerces.xni.parser.XMLDocumentFilter类的典型用法代码示例。如果您正苦于以下问题:Java XMLDocumentFilter类的具体用法?Java XMLDocumentFilter怎么用?Java XMLDocumentFilter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
XMLDocumentFilter类属于org.apache.xerces.xni.parser包,在下文中一共展示了XMLDocumentFilter类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: initParser
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
@Override
protected void initParser(Ruby runtime) {
XMLParserConfiguration config = new HTMLConfiguration();
XMLDocumentFilter removeNSAttrsFilter = new RemoveNSAttrsFilter();
XMLDocumentFilter elementValidityCheckFilter = new ElementValidityCheckFilter(errorHandler);
//XMLDocumentFilter[] filters = { removeNSAttrsFilter, elementValidityCheckFilter};
XMLDocumentFilter[] filters = { elementValidityCheckFilter};
config.setErrorHandler(this.errorHandler);
parser = new NokogiriDomParser(config);
// see http://nekohtml.sourceforge.net/settings.html for details
setProperty("http://cyberneko.org/html/properties/default-encoding", java_encoding);
setProperty("http://cyberneko.org/html/properties/names/elems", "lower");
setProperty("http://cyberneko.org/html/properties/names/attrs", "lower");
setProperty("http://cyberneko.org/html/properties/filters", filters);
setFeature("http://cyberneko.org/html/features/report-errors", true);
setFeature("http://xml.org/sax/features/namespaces", false);
}
开发者ID:gocd,项目名称:gocd,代码行数:21,代码来源:HtmlDomParserContext.java
示例2: setProperty
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
/** Sets a property. */
public void setProperty(String propertyId, Object value)
throws XMLConfigurationException {
super.setProperty(propertyId, value);
if (propertyId.equals(FILTERS)) {
XMLDocumentFilter[] filters = (XMLDocumentFilter[])getProperty(FILTERS);
if (filters != null) {
for (int i = 0; i < filters.length; i++) {
XMLDocumentFilter filter = filters[i];
if (filter instanceof HTMLComponent) {
addComponent((HTMLComponent)filter);
}
}
}
}
int size = fHTMLComponents.size();
for (int i = 0; i < size; i++) {
HTMLComponent component = (HTMLComponent)fHTMLComponents.elementAt(i);
component.setProperty(propertyId, value);
}
}
开发者ID:ecologylab,项目名称:BigSemanticsJava,代码行数:24,代码来源:HTMLConfiguration.java
示例3: TemplateParserConfiguration
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
public TemplateParserConfiguration(HTMLScanner scanner, String templateDefaultCharset, boolean balanceTag) {
AdditionalHandlerFilter starter = new AdditionalHandlerFilter();
addComponent(starter);
setProperty(TemplateScanner.HTML_NAMES_ELEMS, "match");
setProperty(TemplateScanner.HTML_NAMES_ATTRS, "no-change");
/* テンプレート上にエンコーディング指定がなければUTF-8と見なす */
setProperty(TemplateScanner.HTML_DEFAULT_ENCODING, templateDefaultCharset);
setProperty(TemplateScanner.FILTERS, new XMLDocumentFilter[] { starter });
/* 元のテンプレート内容を忠実に再現させるオプション。
* ただし、</html>の後ろは無視される。false(デフォルト)の場合は、
* </body>と</html>の後につづくものをnekoがむりやり前に持ってくる */
setFeature(IGNORE_OUTSIDE_CONTENT, true);
/* <html>や<body>が無い場合もそのままにするオプション。
* これが無いと勝手に付与されてしまう。 */
setFeature(DOCUMENT_FRAGMENT, true);
/* HTMLの省略可能な閉じタグなどを自動的に付与するオプション。
* これをfalseにするべきではないが、HTML5の場合にはaタグがblock要素になっているが
* NekoHTMLはinlineとして見てしまうため意図しない動きをするため、HTMLのバランスを
* 作成者側で保証することとしてfalseにする。 */
setFeature(BALANCE_TAGS, balanceTag);
fDocumentScanner = scanner;
fDocumentScanner.reset(this);
}
开发者ID:seasarorg,项目名称:mayaa,代码行数:24,代码来源:TemplateParser.java
示例4: reset
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
/** Resets the parser configuration. */
protected void reset() throws XMLConfigurationException {
// reset components
int size = fHTMLComponents.size();
for (int i = 0; i < size; i++) {
HTMLComponent component = (HTMLComponent)fHTMLComponents.elementAt(i);
component.reset(this);
}
// configure pipeline
XMLDocumentSource lastSource = fDocumentScanner;
if (getFeature(NAMESPACES)) {
lastSource.setDocumentHandler(fNamespaceBinder);
fNamespaceBinder.setDocumentSource(fTagBalancer);
lastSource = fNamespaceBinder;
}
if (getFeature(BALANCE_TAGS)) {
lastSource.setDocumentHandler(fTagBalancer);
fTagBalancer.setDocumentSource(fDocumentScanner);
lastSource = fTagBalancer;
}
XMLDocumentFilter[] filters = (XMLDocumentFilter[])getProperty(FILTERS);
if (filters != null) {
for (int i = 0; i < filters.length; i++) {
XMLDocumentFilter filter = filters[i];
XercesBridge.getInstance().XMLDocumentFilter_setDocumentSource(filter, lastSource);
lastSource.setDocumentHandler(filter);
lastSource = filter;
}
}
lastSource.setDocumentHandler(fDocumentHandler);
}
开发者ID:ecologylab,项目名称:BigSemanticsJava,代码行数:35,代码来源:HTMLConfiguration.java
示例5: XMLDocumentFilter_setDocumentSource
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
public void XMLDocumentFilter_setDocumentSource(XMLDocumentFilter filter,
XMLDocumentSource lastSource) {
filter.setDocumentSource(lastSource);
}
开发者ID:ecologylab,项目名称:BigSemanticsJava,代码行数:5,代码来源:XercesBridge_2_1.java
示例6: XMLDocumentFilter_setDocumentSource
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
/**
* Calls setDocumentSource (if available in the Xerces version used) on the {@link XMLDocumentFilter}.
* This implementation does nothing.
*/
public void XMLDocumentFilter_setDocumentSource(XMLDocumentFilter filter,
XMLDocumentSource lastSource)
{
// nothing, it didn't exist on old Xerces versions
}
开发者ID:ecologylab,项目名称:BigSemanticsJava,代码行数:10,代码来源:XercesBridge.java
示例7: main
import org.apache.xerces.xni.parser.XMLDocumentFilter; //导入依赖的package包/类
/** Main. */
public static void main(String[] argv) throws Exception {
if (argv.length == 0) {
printUsage();
System.exit(1);
}
XMLParserConfiguration parser = new HTMLConfiguration();
parser.setFeature(NOTIFY_CHAR_REFS, true);
parser.setFeature(NOTIFY_HTML_BUILTIN_REFS, true);
String iencoding = null;
String oencoding = "Windows-1252";
boolean identity = false;
boolean purify = false;
for (int i = 0; i < argv.length; i++) {
String arg = argv[i];
if (arg.equals("-ie")) {
iencoding = argv[++i];
continue;
}
if (arg.equals("-e") || arg.equals("-oe")) {
oencoding = argv[++i];
continue;
}
if (arg.equals("-i")) {
identity = true;
continue;
}
if (arg.equals("-p")) {
purify = true;
continue;
}
if (arg.equals("-h")) {
printUsage();
System.exit(1);
}
java.util.Vector filtersVector = new java.util.Vector(2);
if (identity) {
filtersVector.addElement(new Identity());
}
else if (purify) {
filtersVector.addElement(new Purifier());
}
filtersVector.addElement(new Writer(System.out, oencoding));
XMLDocumentFilter[] filters =
new XMLDocumentFilter[filtersVector.size()];
filtersVector.copyInto(filters);
parser.setProperty(FILTERS, filters);
XMLInputSource source = new XMLInputSource(null, arg, null);
source.setEncoding(iencoding);
parser.parse(source);
}
}
开发者ID:ecologylab,项目名称:BigSemanticsJava,代码行数:53,代码来源:Writer.java
注:本文中的org.apache.xerces.xni.parser.XMLDocumentFilter类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论