/** 将W3C element转换成SAX事件。 */ public static void convertElement(Element element, ContentHandler contentHandler) throws SAXException { SAXWriter writer = new SAXWriter(contentHandler); if (contentHandler instanceof ErrorHandler) { writer.setErrorHandler((ErrorHandler) contentHandler); } if (contentHandler instanceof LexicalHandler) { writer.setLexicalHandler((LexicalHandler) contentHandler); } writer.write(convertElement(element)); }
&& !isIgnoreableNamespace(elementNamespace, namespaceStack)) { namespaceStack.push(elementNamespace); contentHandler.startPrefixMapping(elementNamespace.getPrefix(), elementNamespace.getURI()); namespaceAttributes = addNamespaceAttribute(namespaceAttributes, elementNamespace); if (!isIgnoreableNamespace(namespace, namespaceStack)) { namespaceStack.push(namespace); contentHandler.startPrefixMapping(namespace.getPrefix(), namespace.getURI()); namespaceAttributes = addNamespaceAttribute( namespaceAttributes, namespace);
/** * Generates SAX events for the given Document and all its content * * @param document * is the Document to parse * * @throws SAXException * if there is a SAX error processing the events */ public void write(Document document) throws SAXException { if (document != null) { checkForNullHandlers(); documentLocator(document); startDocument(); entityResolver(document); dtdHandler(document); writeContent(document, new NamespaceStack()); endDocument(); } }
/** * Sets the <code>XMLReader</code> used to write SAX events to * * @param xmlReader * is the <code>XMLReader</code> */ public void setXMLReader(XMLReader xmlReader) { setContentHandler(xmlReader.getContentHandler()); setDTDHandler(xmlReader.getDTDHandler()); setEntityResolver(xmlReader.getEntityResolver()); setErrorHandler(xmlReader.getErrorHandler()); }
/** * Sets the given SAX property * * @param name * DOCUMENT ME! * @param value * DOCUMENT ME! */ public void setProperty(String name, Object value) { for (String lexicalHandlerName : LEXICAL_HANDLER_NAMES) { if (lexicalHandlerName.equals(name)) { setLexicalHandler((LexicalHandler) value); return; } } properties.put(name, value); }
protected void startElement(Element element, AttributesImpl namespaceAttributes) throws SAXException { contentHandler.startElement(element.getNamespaceURI(), element .getName(), element.getQualifiedName(), createAttributes( element, namespaceAttributes)); }
public void doTag(XMLOutput output) throws JellyTagException { Object xpathContext = getXPathContext(); Object node = xpathContext; try { if (select != null) { node = select.selectSingleNode(xpathContext); } if ( node instanceof Element ) { Element element = (Element) node; SAXWriter saxWriter; if (lexical) { saxWriter = new SAXWriter(output, output); } else { saxWriter = new SAXWriter(output); } saxWriter.writeOpen(element); invokeBody(output); saxWriter.writeClose(element); } else { invokeBody(output); } } catch (SAXException e) { throw new JellyTagException(e); } catch (XPathException e) { throw new JellyTagException(e); } }
m_saxWriter = new SAXWriter(saxHandler, saxHandler);
/** * Generates SAX events for the given Document and all its content * * @param document * is the Document to parse * * @throws SAXException * if there is a SAX error processing the events */ public void write(Document document) throws SAXException { if (document != null) { checkForNullHandlers(); documentLocator(document); startDocument(); entityResolver(document); dtdHandler(document); writeContent(document, new NamespaceStack()); endDocument(); } }
/** * Sets the <code>XMLReader</code> used to write SAX events to * * @param xmlReader * is the <code>XMLReader</code> */ public void setXMLReader(XMLReader xmlReader) { setContentHandler(xmlReader.getContentHandler()); setDTDHandler(xmlReader.getDTDHandler()); setEntityResolver(xmlReader.getEntityResolver()); setErrorHandler(xmlReader.getErrorHandler()); }
/** * Sets the given SAX property * * @param name * DOCUMENT ME! * @param value * DOCUMENT ME! */ public void setProperty(String name, Object value) { for (int i = 0; i < LEXICAL_HANDLER_NAMES.length; i++) { if (LEXICAL_HANDLER_NAMES[i].equals(name)) { setLexicalHandler((LexicalHandler) value); return; } } properties.put(name, value); }
protected void startElement(Element element, AttributesImpl namespaceAttributes) throws SAXException { contentHandler.startElement(element.getNamespaceURI(), element .getName(), element.getQualifiedName(), createAttributes( element, namespaceAttributes)); }
m_saxWriter = new SAXWriter(saxHandler, saxHandler);
/** * Generates SAX events for the given Document and all its content * * @param document * is the Document to parse * * @throws SAXException * if there is a SAX error processing the events */ public void write(Document document) throws SAXException { if (document != null) { checkForNullHandlers(); documentLocator(document); startDocument(); entityResolver(document); dtdHandler(document); writeContent(document, new NamespaceStack()); endDocument(); } }
/** * Generates SAX events for the given Element and all its content * * @param element * is the Element to parse * * @throws SAXException * if there is a SAX error processing the events */ public void write(Element element) throws SAXException { write(element, new NamespaceStack()); }
/** * Sets the <code>XMLReader</code> used to write SAX events to * * @param xmlReader * is the <code>XMLReader</code> */ public void setXMLReader(XMLReader xmlReader) { setContentHandler(xmlReader.getContentHandler()); setDTDHandler(xmlReader.getDTDHandler()); setEntityResolver(xmlReader.getEntityResolver()); setErrorHandler(xmlReader.getErrorHandler()); }
/** 将W3C element转换成SAX事件。 */ public static void convertElement(Element element, ContentHandler contentHandler) throws SAXException { SAXWriter writer = new SAXWriter(contentHandler); if (contentHandler instanceof ErrorHandler) { writer.setErrorHandler((ErrorHandler) contentHandler); } if (contentHandler instanceof LexicalHandler) { writer.setLexicalHandler((LexicalHandler) contentHandler); } writer.write(convertElement(element)); }