| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (1.8.0_281) on Sun Jan 15 15:58:35 CET 2023 --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>NodeModel (FreeMarker 2.3.32 API)</title> |
| <meta name="date" content="2023-01-15"> |
| <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="NodeModel (FreeMarker 2.3.32 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":9,"i8":9,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":9,"i17":10,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":41,"i26":41,"i27":9,"i28":9,"i29":10,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/NodeModel.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../index-all.html">Index</a></li> |
| <li><a href="../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev Class</li> |
| <li><a href="../../../freemarker/ext/dom/Transform.html" title="class in freemarker.ext.dom"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../index.html?freemarker/ext/dom/NodeModel.html" target="_top">Frames</a></li> |
| <li><a href="NodeModel.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">freemarker.ext.dom</div> |
| <h2 title="Class NodeModel" class="title">Class NodeModel</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li>java.lang.Object</li> |
| <li> |
| <ul class="inheritance"> |
| <li>freemarker.ext.dom.NodeModel</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Implemented Interfaces:</dt> |
| <dd>freemarker.core._UnexpectedTypeErrorExplainerTemplateModel, <a href="../../../freemarker/ext/util/WrapperTemplateModel.html" title="interface in freemarker.ext.util">WrapperTemplateModel</a>, <a href="../../../freemarker/template/AdapterTemplateModel.html" title="interface in freemarker.template">AdapterTemplateModel</a>, <a href="../../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a>, <a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a>, <a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a>, <a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a>, <a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a></dd> |
| </dl> |
| <hr> |
| <br> |
| <pre>public abstract class <span class="typeNameLabel">NodeModel</span> |
| extends java.lang.Object |
| implements <a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a>, <a href="../../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a>, <a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a>, <a href="../../../freemarker/template/AdapterTemplateModel.html" title="interface in freemarker.template">AdapterTemplateModel</a>, <a href="../../../freemarker/ext/util/WrapperTemplateModel.html" title="interface in freemarker.ext.util">WrapperTemplateModel</a>, freemarker.core._UnexpectedTypeErrorExplainerTemplateModel</pre> |
| <div class="block">A base class for wrapping a single W3C DOM Node as a FreeMarker template model. |
| |
| <p> |
| Note that <a href="../../../freemarker/template/DefaultObjectWrapper.html" title="class in freemarker.template"><code>DefaultObjectWrapper</code></a> automatically wraps W3C DOM <code>Node</code>-s into this, so you may need do that |
| with this class manually. However, before dropping the <code>Node</code>-s into the data-model, you certainly want to |
| apply <a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(Node)</code></a> on them. |
| |
| <p> |
| This class is not guaranteed to be thread safe, so instances of this shouldn't be used as shared variable ( |
| <a href="../../../freemarker/template/Configuration.html#setSharedVariable-java.lang.String-java.lang.Object-"><code>Configuration.setSharedVariable(String, Object)</code></a>). |
| |
| <p> |
| To represent a node sequence (such as a query result) of exactly 1 nodes, this class should be used instead of |
| <code>NodeListModel</code>, as it adds extra capabilities by utilizing that we have exactly 1 node. If you need to wrap a |
| node sequence of 0 or multiple nodes, you must use <code>NodeListModel</code>.</div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <ul class="blockList"> |
| <li class="blockList"><a name="fields.inherited.from.class.freemarker.template.TemplateModel"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from interface freemarker.template.<a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></h3> |
| <code><a href="../../../freemarker/template/TemplateModel.html#NOTHING">NOTHING</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier</th> |
| <th class="colLast" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#NodeModel-org.w3c.dom.Node-">NodeModel</a></span>(org.w3c.dom.Node node)</code> </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#equals-java.lang.Object-">equals</a></span>(java.lang.Object other)</code> </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#exec-java.util.List-">exec</a></span>(java.util.List args)</code> </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>java.lang.Object[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#explainTypeError-java.lang.Class:A-">explainTypeError</a></span>(java.lang.Class[] expectedClasses)</code> </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#get-int-">get</a></span>(int i)</code> |
| <div class="block">Retrieves the i-th template model in this sequence.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#get-java.lang.String-">get</a></span>(java.lang.String key)</code> |
| <div class="block">Gets a <tt>TemplateModel</tt> from the hash.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>java.lang.Object</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getAdaptedObject-java.lang.Class-">getAdaptedObject</a></span>(java.lang.Class hint)</code> |
| <div class="block">Retrieves the underlying object, or some other object semantically |
| equivalent to its value narrowed by the class hint.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getChildNodes--">getChildNodes</a></span>()</code> </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>static javax.xml.parsers.DocumentBuilderFactory</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getDocumentBuilderFactory--">getDocumentBuilderFactory</a></span>()</code> |
| <div class="block">Returns the DOM parser implementation that is used when building <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> objects from XML files or from |
| <code>InputStream</code> with the static convenience methods of <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>static org.xml.sax.ErrorHandler</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getErrorHandler--">getErrorHandler</a></span>()</code> </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getNextSibling--">getNextSibling</a></span>()</code> </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>org.w3c.dom.Node</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getNode--">getNode</a></span>()</code> </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getNodeNamespace--">getNodeNamespace</a></span>()</code> </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getNodeType--">getNodeType</a></span>()</code> </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getParentNode--">getParentNode</a></span>()</code> </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code><a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getPreviousSibling--">getPreviousSibling</a></span>()</code> </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>java.lang.Object</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getWrappedObject--">getWrappedObject</a></span>()</code> |
| <div class="block">Retrieves the original object wrapped by this model.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>static java.lang.Class</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#getXPathSupportClass--">getXPathSupportClass</a></span>()</code> |
| <div class="block">Get the currently used freemarker.ext.dom.XPathSupport used as the XPath engine.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#hashCode--">hashCode</a></span>()</code> </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#mergeAdjacentText-org.w3c.dom.Node-">mergeAdjacentText</a></span>(org.w3c.dom.Node parent)</code> |
| <div class="block">Merges adjacent text nodes (where CDATA counts as text node too).</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#parse-java.io.File-">parse</a></span>(java.io.File f)</code> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(source, true, true)</code></a>, but loads from a <code>File</code>; |
| don't miss the security warnings documented there.</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#parse-java.io.File-boolean-boolean-">parse</a></span>(java.io.File f, |
| boolean removeComments, |
| boolean removePIs)</code> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(InputSource, boolean, boolean)</code></a>, but loads from a <code>File</code>; don't miss the security |
| warnings documented there.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-">parse</a></span>(org.xml.sax.InputSource is)</code> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(is, true, true)</code></a>; don't miss the security warnings |
| documented there.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-">parse</a></span>(org.xml.sax.InputSource is, |
| boolean removeComments, |
| boolean removePIs)</code> |
| <div class="block">Convenience method to create a <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> from a SAX <code>InputSource</code>; please see the security warning |
| further down.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#removeComments-org.w3c.dom.Node-">removeComments</a></span>(org.w3c.dom.Node parent)</code> |
| <div class="block">Recursively removes all comment nodes from the subtree.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#removePIs-org.w3c.dom.Node-">removePIs</a></span>(org.w3c.dom.Node parent)</code> |
| <div class="block">Recursively removes all processing instruction nodes from the subtree.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#setDocumentBuilderFactory-javax.xml.parsers.DocumentBuilderFactory-">setDocumentBuilderFactory</a></span>(javax.xml.parsers.DocumentBuilderFactory docBuilderFactory)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">It's a bad practice to change static fields, as if multiple independent components do that in the |
| same JVM, they unintentionally affect each other. Therefore it's recommended to leave this static |
| value at its default.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#setErrorHandler-org.xml.sax.ErrorHandler-">setErrorHandler</a></span>(org.xml.sax.ErrorHandler errorHandler)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">It's a bad practice to change static fields, as if multiple independent components do that in the |
| same JVM, they unintentionally affect each other. Therefore it's recommended to leave this static |
| value at its default.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#setXPathSupportClass-java.lang.Class-">setXPathSupportClass</a></span>(java.lang.Class cl)</code> |
| <div class="block">Set an alternative implementation of freemarker.ext.dom.XPathSupport to use |
| as the XPath engine.</div> |
| </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-">simplify</a></span>(org.w3c.dom.Node parent)</code> |
| <div class="block">Removes all comments and processing instruction, and unites adjacent text nodes (here CDATA counts as text as |
| well).</div> |
| </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#size--">size</a></span>()</code> |
| <div class="block">Always returns 1.</div> |
| </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#useDefaultXPathSupport--">useDefaultXPathSupport</a></span>()</code> |
| <div class="block">Tells the system to use (restore) the default (initial) XPath system used by |
| this FreeMarker version on this system.</div> |
| </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#useJaxenXPathSupport--">useJaxenXPathSupport</a></span>()</code> |
| <div class="block">Convenience method.</div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#useSunInternalXPathSupport--">useSunInternalXPathSupport</a></span>()</code> </td> |
| </tr> |
| <tr id="i33" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#useXalanXPathSupport--">useXalanXPathSupport</a></span>()</code> |
| <div class="block">Convenience method.</div> |
| </td> |
| </tr> |
| <tr id="i34" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../freemarker/ext/dom/NodeModel.html#wrap-org.w3c.dom.Node-">wrap</a></span>(org.w3c.dom.Node node)</code> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.Object</h3> |
| <code>clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.freemarker.template.TemplateNodeModel"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface freemarker.template.<a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></h3> |
| <code><a href="../../../freemarker/template/TemplateNodeModel.html#getNodeName--">getNodeName</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.freemarker.template.TemplateHashModel"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface freemarker.template.<a href="../../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a></h3> |
| <code><a href="../../../freemarker/template/TemplateHashModel.html#isEmpty--">isEmpty</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="NodeModel-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>NodeModel</h4> |
| <pre>protected NodeModel(org.w3c.dom.Node node)</pre> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="setDocumentBuilderFactory-javax.xml.parsers.DocumentBuilderFactory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDocumentBuilderFactory</h4> |
| <pre>@Deprecated |
| public static void setDocumentBuilderFactory(javax.xml.parsers.DocumentBuilderFactory docBuilderFactory)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">It's a bad practice to change static fields, as if multiple independent components do that in the |
| same JVM, they unintentionally affect each other. Therefore it's recommended to leave this static |
| value at its default.</span></div> |
| <div class="block">Sets the DOM parser implementation to be used when building <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> objects from XML files or from |
| <code>InputStream</code> with the static convenience methods of <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a>. Otherwise FreeMarker itself doesn't |
| use this.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#getDocumentBuilderFactory--"><code>getDocumentBuilderFactory()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDocumentBuilderFactory--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDocumentBuilderFactory</h4> |
| <pre>public static javax.xml.parsers.DocumentBuilderFactory getDocumentBuilderFactory()</pre> |
| <div class="block">Returns the DOM parser implementation that is used when building <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> objects from XML files or from |
| <code>InputStream</code> with the static convenience methods of <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a>. Otherwise FreeMarker itself doesn't |
| use this.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#setDocumentBuilderFactory-javax.xml.parsers.DocumentBuilderFactory-"><code>setDocumentBuilderFactory(DocumentBuilderFactory)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setErrorHandler-org.xml.sax.ErrorHandler-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setErrorHandler</h4> |
| <pre>@Deprecated |
| public static void setErrorHandler(org.xml.sax.ErrorHandler errorHandler)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">It's a bad practice to change static fields, as if multiple independent components do that in the |
| same JVM, they unintentionally affect each other. Therefore it's recommended to leave this static |
| value at its default.</span></div> |
| <div class="block">Sets the error handler to use when parsing the document with the static convenience methods of <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a>.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#getErrorHandler--"><code>getErrorHandler()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getErrorHandler--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getErrorHandler</h4> |
| <pre>public static org.xml.sax.ErrorHandler getErrorHandler()</pre> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#setErrorHandler-org.xml.sax.ErrorHandler-"><code>setErrorHandler(ErrorHandler)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="parse-org.xml.sax.InputSource-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>parse</h4> |
| <pre>public static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a> parse(org.xml.sax.InputSource is, |
| boolean removeComments, |
| boolean removePIs) |
| throws org.xml.sax.SAXException, |
| java.io.IOException, |
| javax.xml.parsers.ParserConfigurationException</pre> |
| <div class="block">Convenience method to create a <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> from a SAX <code>InputSource</code>; please see the security warning |
| further down. Adjacent text nodes will be merged (and CDATA sections are considered as text nodes) as with |
| <a href="../../../freemarker/ext/dom/NodeModel.html#mergeAdjacentText-org.w3c.dom.Node-"><code>mergeAdjacentText(Node)</code></a>. Further simplifications are applied depending on the parameters. If all |
| simplifications are turned on, then it applies <a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(Node)</code></a> on the loaded DOM. |
| |
| <p> |
| Note that <code>parse(...)</code> is only a convenience method, and FreeMarker itself doesn't use it (except when you |
| call the other similar static convenience methods, as they may build on each other). In particular, if you want |
| full control over the <code>DocumentBuilderFactory</code> used, create the <code>Node</code> with your own |
| <code>DocumentBuilderFactory</code>, apply <a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(Node)</code></a> (or such) on it, then call |
| <a href="../../../freemarker/ext/dom/NodeModel.html#wrap-org.w3c.dom.Node-"><code>wrap(Node)</code></a>. |
| |
| <p> |
| <b>Security warning:</b> If the XML to load is coming from a source that you can't fully trust, you shouldn't use |
| this method, as the <code>DocumentBuilderFactory</code> it uses by default supports external entities, and so it |
| doesn't prevent XML External Entity (XXE) attacks. Note that XXE attacks are not specific to FreeMarker, they |
| affect all XML parsers in general. If that's a problem in your application, OWASP has a cheat sheet to set up a |
| <code>DocumentBuilderFactory</code> that has limited functionality but is immune to XXE attacks. Because it's just a |
| convenience method, you can just use your own <code>DocumentBuilderFactory</code> and do a few extra steps instead |
| (see earlier).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>removeComments</code> - Whether to remove all comment nodes (recursively); this is like calling <a href="../../../freemarker/ext/dom/NodeModel.html#removeComments-org.w3c.dom.Node-"><code>removeComments(Node)</code></a></dd> |
| <dd><code>removePIs</code> - Whether to remove all processing instruction nodes (recursively); this is like calling |
| <a href="../../../freemarker/ext/dom/NodeModel.html#removePIs-org.w3c.dom.Node-"><code>removePIs(Node)</code></a></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>org.xml.sax.SAXException</code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code>javax.xml.parsers.ParserConfigurationException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="parse-org.xml.sax.InputSource-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>parse</h4> |
| <pre>public static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a> parse(org.xml.sax.InputSource is) |
| throws org.xml.sax.SAXException, |
| java.io.IOException, |
| javax.xml.parsers.ParserConfigurationException</pre> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(is, true, true)</code></a>; don't miss the security warnings |
| documented there.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>org.xml.sax.SAXException</code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code>javax.xml.parsers.ParserConfigurationException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="parse-java.io.File-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>parse</h4> |
| <pre>public static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a> parse(java.io.File f, |
| boolean removeComments, |
| boolean removePIs) |
| throws org.xml.sax.SAXException, |
| java.io.IOException, |
| javax.xml.parsers.ParserConfigurationException</pre> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(InputSource, boolean, boolean)</code></a>, but loads from a <code>File</code>; don't miss the security |
| warnings documented there.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>org.xml.sax.SAXException</code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code>javax.xml.parsers.ParserConfigurationException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="parse-java.io.File-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>parse</h4> |
| <pre>public static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a> parse(java.io.File f) |
| throws org.xml.sax.SAXException, |
| java.io.IOException, |
| javax.xml.parsers.ParserConfigurationException</pre> |
| <div class="block">Same as <a href="../../../freemarker/ext/dom/NodeModel.html#parse-org.xml.sax.InputSource-boolean-boolean-"><code>parse(source, true, true)</code></a>, but loads from a <code>File</code>; |
| don't miss the security warnings documented there.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>org.xml.sax.SAXException</code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code>javax.xml.parsers.ParserConfigurationException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNode</h4> |
| <pre>public org.w3c.dom.Node getNode()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the underling W3C DOM Node object that this TemplateNodeModel |
| is wrapping.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="get-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>get</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> get(java.lang.String key) |
| throws <a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../freemarker/template/TemplateHashModel.html#get-java.lang.String-">TemplateHashModel</a></code></span></div> |
| <div class="block">Gets a <tt>TemplateModel</tt> from the hash.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateHashModel.html#get-java.lang.String-">get</a></code> in interface <code><a href="../../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>key</code> - the name by which the <tt>TemplateModel</tt> |
| is identified in the template.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the <tt>TemplateModel</tt> referred to by the key, |
| or null if not found.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getParentNode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getParentNode</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a> getParentNode()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModel.html#getParentNode--">getParentNode</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the parent of this node or null, in which case |
| this node is the root of the tree.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getPreviousSibling--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getPreviousSibling</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a> getPreviousSibling() |
| throws <a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModelEx.html#getPreviousSibling--">getPreviousSibling</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>The immediate previous sibling of this node, or <code>null</code> if there's no such node.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNextSibling--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNextSibling</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a> getNextSibling() |
| throws <a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModelEx.html#getNextSibling--">getNextSibling</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModelEx.html" title="interface in freemarker.template">TemplateNodeModelEx</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>The immediate next sibling of this node, or <code>null</code> if there's no such node.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getChildNodes--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getChildNodes</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a> getChildNodes()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModel.html#getChildNodes--">getChildNodes</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a sequence containing this node's children. |
| If the returned value is null or empty, this is essentially |
| a leaf node.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNodeType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNodeType</h4> |
| <pre>public final java.lang.String getNodeType() |
| throws <a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModel.html#getNodeType--">getNodeType</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a String describing the <em>type</em> of node this is. |
| In the W3C DOM, this should be "element", "text", "attribute", etc. |
| A TemplateNodeModel implementation that models other kinds of |
| trees could return whatever it appropriate for that application. It |
| can be null, if you don't want to use node-types.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="exec-java.util.List-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>exec</h4> |
| <pre>public <a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> exec(java.util.List args) |
| throws <a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="size--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>size</h4> |
| <pre>public final int size()</pre> |
| <div class="block">Always returns 1.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateSequenceModel.html#size--">size</a></code> in interface <code><a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the number of items in the list.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="get-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>get</h4> |
| <pre>public final <a href="../../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> get(int i)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../freemarker/template/TemplateSequenceModel.html#get-int-">TemplateSequenceModel</a></code></span></div> |
| <div class="block">Retrieves the i-th template model in this sequence.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateSequenceModel.html#get-int-">get</a></code> in interface <code><a href="../../../freemarker/template/TemplateSequenceModel.html" title="interface in freemarker.template">TemplateSequenceModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the item at the specified index, or <code>null</code> if the index is out of bounds. Note that a |
| <code>null</code> value is interpreted by FreeMarker as "variable does not exist", and accessing a |
| missing variables is usually considered as an error in the FreeMarker Template Language, so the usage of |
| a bad index will not remain hidden, unless the default value for that case was also specified in the |
| template.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNodeNamespace--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNodeNamespace</h4> |
| <pre>public java.lang.String getNodeNamespace()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/TemplateNodeModel.html#getNodeNamespace--">getNodeNamespace</a></code> in interface <code><a href="../../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the XML namespace URI with which this node is |
| associated. If this TemplateNodeModel implementation is |
| not XML-related, it will almost certainly be null. Even |
| for XML nodes, this will often be null.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="hashCode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>hashCode</h4> |
| <pre>public final int hashCode()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>hashCode</code> in class <code>java.lang.Object</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="equals-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>equals</h4> |
| <pre>public boolean equals(java.lang.Object other)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>equals</code> in class <code>java.lang.Object</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="wrap-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>wrap</h4> |
| <pre>public static <a href="../../../freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom">NodeModel</a> wrap(org.w3c.dom.Node node)</pre> |
| </li> |
| </ul> |
| <a name="removeComments-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>removeComments</h4> |
| <pre>public static void removeComments(org.w3c.dom.Node parent)</pre> |
| <div class="block">Recursively removes all comment nodes from the subtree.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(org.w3c.dom.Node)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="removePIs-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>removePIs</h4> |
| <pre>public static void removePIs(org.w3c.dom.Node parent)</pre> |
| <div class="block">Recursively removes all processing instruction nodes from the subtree.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(org.w3c.dom.Node)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="mergeAdjacentText-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>mergeAdjacentText</h4> |
| <pre>public static void mergeAdjacentText(org.w3c.dom.Node parent)</pre> |
| <div class="block">Merges adjacent text nodes (where CDATA counts as text node too). Operates recursively on the entire subtree. |
| The merged node will have the type of the first node of the adjacent merged nodes. |
| |
| <p>Because XPath assumes that there are no adjacent text nodes in the tree, not doing this can have |
| undesirable side effects. Xalan queries like <code>text()</code> will only return the first of a list of matching |
| adjacent text nodes instead of all of them, while Jaxen will return all of them as intuitively expected.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../freemarker/ext/dom/NodeModel.html#simplify-org.w3c.dom.Node-"><code>simplify(org.w3c.dom.Node)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="simplify-org.w3c.dom.Node-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>simplify</h4> |
| <pre>public static void simplify(org.w3c.dom.Node parent)</pre> |
| <div class="block">Removes all comments and processing instruction, and unites adjacent text nodes (here CDATA counts as text as |
| well). This is similar to applying <a href="../../../freemarker/ext/dom/NodeModel.html#removeComments-org.w3c.dom.Node-"><code>removeComments(Node)</code></a>, <a href="../../../freemarker/ext/dom/NodeModel.html#removePIs-org.w3c.dom.Node-"><code>removePIs(Node)</code></a>, and finally |
| <a href="../../../freemarker/ext/dom/NodeModel.html#mergeAdjacentText-org.w3c.dom.Node-"><code>mergeAdjacentText(Node)</code></a>, but it does all that somewhat faster.</div> |
| </li> |
| </ul> |
| <a name="useDefaultXPathSupport--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>useDefaultXPathSupport</h4> |
| <pre>public static void useDefaultXPathSupport()</pre> |
| <div class="block">Tells the system to use (restore) the default (initial) XPath system used by |
| this FreeMarker version on this system.</div> |
| </li> |
| </ul> |
| <a name="useJaxenXPathSupport--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>useJaxenXPathSupport</h4> |
| <pre>public static void useJaxenXPathSupport() |
| throws java.lang.Exception</pre> |
| <div class="block">Convenience method. Tells the system to use Jaxen for XPath queries.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if the Jaxen classes are not present.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="useXalanXPathSupport--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>useXalanXPathSupport</h4> |
| <pre>public static void useXalanXPathSupport() |
| throws java.lang.Exception</pre> |
| <div class="block">Convenience method. Tells the system to use Xalan for XPath queries.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if the Xalan XPath classes are not present.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="useSunInternalXPathSupport--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>useSunInternalXPathSupport</h4> |
| <pre>public static void useSunInternalXPathSupport() |
| throws java.lang.Exception</pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setXPathSupportClass-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setXPathSupportClass</h4> |
| <pre>public static void setXPathSupportClass(java.lang.Class cl)</pre> |
| <div class="block">Set an alternative implementation of freemarker.ext.dom.XPathSupport to use |
| as the XPath engine.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>cl</code> - the class, or <code>null</code> to disable XPath support.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getXPathSupportClass--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getXPathSupportClass</h4> |
| <pre>public static java.lang.Class getXPathSupportClass()</pre> |
| <div class="block">Get the currently used freemarker.ext.dom.XPathSupport used as the XPath engine. |
| Returns <code>null</code> if XPath support is disabled.</div> |
| </li> |
| </ul> |
| <a name="getAdaptedObject-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getAdaptedObject</h4> |
| <pre>public java.lang.Object getAdaptedObject(java.lang.Class hint)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../freemarker/template/AdapterTemplateModel.html#getAdaptedObject-java.lang.Class-">AdapterTemplateModel</a></code></span></div> |
| <div class="block">Retrieves the underlying object, or some other object semantically |
| equivalent to its value narrowed by the class hint.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/template/AdapterTemplateModel.html#getAdaptedObject-java.lang.Class-">getAdaptedObject</a></code> in interface <code><a href="../../../freemarker/template/AdapterTemplateModel.html" title="interface in freemarker.template">AdapterTemplateModel</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>hint</code> - the desired class of the returned value. An implementation |
| should make reasonable effort to retrieve an object of the requested |
| class, but if that is impossible, it must at least return the underlying |
| object as-is. As a minimal requirement, an implementation must always |
| return the exact underlying object when |
| <tt>hint.isInstance(underlyingObject)</tt> holds. When called |
| with <tt>java.lang.Object.class</tt>, it should return a generic Java |
| object (i.e. if the model is wrapping a scripting language object that is |
| further wrapping a Java object, the deepest underlying Java object should |
| be returned).</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the underlying object, or its value accommodated for the hint |
| class.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getWrappedObject--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getWrappedObject</h4> |
| <pre>public java.lang.Object getWrappedObject()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../freemarker/ext/util/WrapperTemplateModel.html#getWrappedObject--">WrapperTemplateModel</a></code></span></div> |
| <div class="block">Retrieves the original object wrapped by this model.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../freemarker/ext/util/WrapperTemplateModel.html#getWrappedObject--">getWrappedObject</a></code> in interface <code><a href="../../../freemarker/ext/util/WrapperTemplateModel.html" title="interface in freemarker.ext.util">WrapperTemplateModel</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="explainTypeError-java.lang.Class:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>explainTypeError</h4> |
| <pre>public java.lang.Object[] explainTypeError(java.lang.Class[] expectedClasses)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code>explainTypeError</code> in interface <code>freemarker.core._UnexpectedTypeErrorExplainerTemplateModel</code></dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/NodeModel.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../index-all.html">Index</a></li> |
| <li><a href="../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev Class</li> |
| <li><a href="../../../freemarker/ext/dom/Transform.html" title="class in freemarker.ext.dom"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../index.html?freemarker/ext/dom/NodeModel.html" target="_top">Frames</a></li> |
| <li><a href="NodeModel.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </body> |
| </html> |