<!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:37 CET 2023 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Deprecated List (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="Deprecated List (FreeMarker 2.3.32 API)";
        }
    }
    catch(err) {
    }
//-->
</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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Deprecated API" class="title">Deprecated API</h1>
<h2 title="Contents">Contents</h2>
<ul>
<li><a href="#interface">Deprecated Interfaces</a></li>
<li><a href="#class">Deprecated Classes</a></li>
<li><a href="#field">Deprecated Fields</a></li>
<li><a href="#method">Deprecated Methods</a></li>
<li><a href="#constructor">Deprecated Constructors</a></li>
</ul>
</div>
<div class="contentContainer"><a name="interface">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Interfaces table, listing deprecated interfaces, and an explanation">
<caption><span>Deprecated Interfaces</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Interface and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/TemplateMethodModel.html" title="interface in freemarker.template">freemarker.template.TemplateMethodModel</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/TemplateMethodModelEx.html" title="interface in freemarker.template"><code>TemplateMethodModelEx</code></a> instead. This interface is from the old times when the only kind of
    value you could pass in was string.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="class">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Classes table, listing deprecated classes, and an explanation">
<caption><span>Deprecated Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/utility/CaptureOutput.html" title="class in freemarker.template.utility">freemarker.template.utility.CaptureOutput</a>
<div class="block"><span class="deprecationComment">Use block-assignments instead, like <code>&lt;assign x&gt;...&lt;/assign&gt;</code>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/Collections12.html" title="class in freemarker.template.utility">freemarker.template.utility.Collections12</a>
<div class="block"><span class="deprecationComment">Not needed anymore, as FreeMarker now requires higher than Java 1.3</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/core/CommandLine.html" title="class in freemarker.core">freemarker.core.CommandLine</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/DOMNodeModel.html" title="class in freemarker.template.utility">freemarker.template.utility.DOMNodeModel</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/jsp/FreemarkerTag.html" title="class in freemarker.ext.jsp">freemarker.ext.jsp.FreemarkerTag</a>
<div class="block"><span class="deprecationComment">This feature is not supported anymore, also, it uses the deprecated default <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/FreeMarkerTree.html" title="class in freemarker.core">freemarker.core.FreeMarkerTree</a>
<div class="block"><span class="deprecationComment">Will be removed, as Swing classes aren't accessible on Google App Engine.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/ant/FreemarkerXmlTask.html" title="class in freemarker.ext.ant">freemarker.ext.ant.FreemarkerXmlTask</a>
<div class="block"><span class="deprecationComment"><a href="http://fmpp.sourceforge.net">FMPP</a> is a more complete solution.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/util/IdentityHashMap.html" title="class in freemarker.ext.util">freemarker.ext.util.IdentityHashMap</a>
<div class="block"><span class="deprecationComment">Use <code>IdentityHashMap</code> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/jdom/NodeListModel.html" title="class in freemarker.ext.jdom">freemarker.ext.jdom.NodeListModel</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/xml/NodeListModel.html" title="class in freemarker.ext.xml">freemarker.ext.xml.NodeListModel</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/dom/NodeModel.html" title="class in freemarker.ext.dom"><code>NodeModel</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleList.html" title="class in freemarker.template">freemarker.template.SimpleList</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleSequence.html" title="class in freemarker.template"><code>SimpleSequence</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/ToCanonical.html" title="class in freemarker.template.utility">freemarker.template.utility.ToCanonical</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/dom/Transform.html" title="class in freemarker.ext.dom">freemarker.ext.dom.Transform</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="field">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Fields table, listing deprecated fields, and an explanation">
<caption><span>Deprecated Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Field and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#AUTO_IMPORT_KEY">freemarker.template.Configuration.AUTO_IMPORT_KEY</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Configurable.html#AUTO_IMPORT_KEY_SNAKE_CASE"><code>Configurable.AUTO_IMPORT_KEY_SNAKE_CASE</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#AUTO_IMPORT_KEY_CAMEL_CASE">freemarker.template.Configuration.AUTO_IMPORT_KEY_CAMEL_CASE</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Configurable.html#AUTO_IMPORT_KEY_CAMEL_CASE"><code>Configurable.AUTO_IMPORT_KEY_CAMEL_CASE</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#AUTO_IMPORT_KEY_SNAKE_CASE">freemarker.template.Configuration.AUTO_IMPORT_KEY_SNAKE_CASE</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Configurable.html#AUTO_IMPORT_KEY_SNAKE_CASE"><code>Configurable.AUTO_IMPORT_KEY_SNAKE_CASE</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/ObjectWrapper.html#BEANS_WRAPPER">freemarker.template.ObjectWrapper.BEANS_WRAPPER</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/beans/BeansWrapperBuilder.html#build--"><code>BeansWrapperBuilder.build()</code></a> instead; this instance isn't read-only
    and thus can't be trusted.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/servlet/FreemarkerServlet.html#debug">freemarker.ext.servlet.FreemarkerServlet.debug</a>
<div class="block"><span class="deprecationComment">Not used anymore; to enable/disable debug logging, just set the logging level of the logging library
             used by <a href="freemarker/log/Logger.html" title="class in freemarker.log"><code>Logger</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#DEFAULT_INCOMPATIBLE_ENHANCEMENTS">freemarker.template.Configuration.DEFAULT_INCOMPATIBLE_ENHANCEMENTS</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#DEFAULT_INCOMPATIBLE_IMPROVEMENTS"><code>Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/ObjectWrapper.html#DEFAULT_WRAPPER">freemarker.template.ObjectWrapper.DEFAULT_WRAPPER</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/DefaultObjectWrapperBuilder.html#build--"><code>DefaultObjectWrapperBuilder.build()</code></a> instead; this instance isn't read-only and thus can't
             be trusted.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#INCOMPATIBLE_ENHANCEMENTS">freemarker.template.Configuration.INCOMPATIBLE_ENHANCEMENTS</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#INCOMPATIBLE_IMPROVEMENTS_KEY"><code>Configuration.INCOMPATIBLE_IMPROVEMENTS_KEY</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#INCOMPATIBLE_IMPROVEMENTS">freemarker.template.Configuration.INCOMPATIBLE_IMPROVEMENTS</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#INCOMPATIBLE_IMPROVEMENTS_KEY"><code>Configuration.INCOMPATIBLE_IMPROVEMENTS_KEY</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/log/Logger.html#LIBRARY_AVALON">freemarker.log.Logger.LIBRARY_AVALON</a>
<div class="block"><span class="deprecationComment">Avalon LogKit support will be removed sometimes in the future.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/log/Logger.html#LIBRARY_NAME_AVALON">freemarker.log.Logger.LIBRARY_NAME_AVALON</a>
<div class="block"><span class="deprecationComment">Avalon LogKit support will be removed sometimes in the future.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#PARSED_DEFAULT_INCOMPATIBLE_ENHANCEMENTS">freemarker.template.Configuration.PARSED_DEFAULT_INCOMPATIBLE_ENHANCEMENTS</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#DEFAULT_INCOMPATIBLE_IMPROVEMENTS"><code>Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/ObjectWrapper.html#SIMPLE_WRAPPER">freemarker.template.ObjectWrapper.SIMPLE_WRAPPER</a>
<div class="block"><span class="deprecationComment">No replacement as it was seldom if ever used by anyone; this instance isn't
    read-only and thus can't be trusted.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/ParseException.html#specialConstructor">freemarker.core.ParseException.specialConstructor</a>
<div class="block"><span class="deprecationComment">Will be remove without replacement in 2.4.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Template.WrongEncodingException.html#specifiedEncoding">freemarker.template.Template.WrongEncodingException.specifiedEncoding</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Template.WrongEncodingException.html#getTemplateSpecifiedEncoding--"><code>Template.WrongEncodingException.getTemplateSpecifiedEncoding()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Configurable.html#STRICT_BEAN_MODELS">freemarker.core.Configurable.STRICT_BEAN_MODELS</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY"><code>Configurable.STRICT_BEAN_MODELS_KEY</code></a> instead.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="method">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Methods table, listing deprecated methods, and an explanation">
<caption><span>Deprecated Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleSequence.html#add-boolean-">freemarker.template.SimpleSequence.add(boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleSequence.html#add-java.lang.Object-"><code>SimpleSequence.add(Object)</code></a> instead, as this bypasses the <a href="freemarker/template/ObjectWrapper.html" title="interface in freemarker.template"><code>ObjectWrapper</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#addImport-freemarker.core.LibraryLoad-">freemarker.template.Template.addImport(LibraryLoad)</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Template.html#addMacro-freemarker.core.Macro-">freemarker.template.Template.addMacro(Macro)</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#addPrefixNSMapping-java.lang.String-java.lang.String-">freemarker.template.Template.addPrefixNSMapping(String, String)</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#clearClassIntrospecitonCache--">freemarker.ext.beans.BeansWrapper.clearClassIntrospecitonCache()</a>
<div class="block"><span class="deprecationComment">There's a typo in this method name, so use <a href="freemarker/ext/beans/BeansWrapper.html#clearClassIntrospectionCache--"><code>BeansWrapper.clearClassIntrospectionCache()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#containingElements-int-int-">freemarker.template.Template.containingElements(int, int)</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#createLegacyDefaultTemplateLoader--">freemarker.cache.TemplateCache.createLegacyDefaultTemplateLoader()</a>
<div class="block"><span class="deprecationComment">The <a href="freemarker/cache/TemplateLoader.html" title="interface in freemarker.cache"><code>TemplateLoader</code></a> should be always specified by the constructor caller.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#finetuneMethodAppearance-java.lang.Class-java.lang.reflect.Method-freemarker.ext.beans.BeansWrapper.MethodAppearanceDecision-">freemarker.ext.beans.BeansWrapper.finetuneMethodAppearance(Class&lt;?&gt;, Method, BeansWrapper.MethodAppearanceDecision)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/beans/BeansWrapper.html#setMethodAppearanceFineTuner-freemarker.ext.beans.MethodAppearanceFineTuner-"><code>BeansWrapper.setMethodAppearanceFineTuner(MethodAppearanceFineTuner)</code></a>;
     no need to extend this class anymore.
     Soon this method will be final, so trying to override it will break your app.
     Note that if the <code>methodAppearanceFineTuner</code> property is set to non-<code>null</code>, this method is not
     called anymore.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/TemplateException.html#getCauseException--">freemarker.template.TemplateException.getCauseException()</a>
<div class="block"><span class="deprecationComment">Java 1.4 has introduced <code>Throwable.getCause()</code> - use that instead, especially as this can't return
 runtime exceptions and errors as is.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Environment.html#getCNumberFormat--">freemarker.core.Environment.getCNumberFormat()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>Environment.getCTemplateNumberFormat()</code></a> instead. This method can't return the format used when
 <a href="freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-">Incompatible Improvements</a> is 2.3.32,
 or greater, and instead it will fall back to return the format that was used for 2.3.31. Also, as its described
 earlier, this method was inconsistent with <code>?c</code> between Incompatible Improvements 2.3.21 and 2.3.30, while
 <a href="freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>Environment.getCTemplateNumberFormat()</code></a> behaves as <code>?c</code> for all Incompatible Improvements value.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#getDefaultConfiguration--">freemarker.template.Configuration.getDefaultConfiguration()</a>
<div class="block"><span class="deprecationComment">The usage of the static singleton (the "default")
 <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instance can easily cause erroneous, unpredictable
 behavior. This is because multiple independent software components may use
 FreeMarker internally inside the same application, so they will interfere
 because of the common <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instance. Each such component
 should use its own private <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> object instead, that it
 typically creates with <code>new Configuration()</code> when the component
 is initialized.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#getDefaultInstance--">freemarker.ext.beans.BeansWrapper.getDefaultInstance()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/beans/BeansWrapperBuilder.html" title="class in freemarker.ext.beans"><code>BeansWrapperBuilder</code></a> instead. The instance returned here is not read-only, so it's
     dangerous to use.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/WrappingTemplateModel.html#getDefaultObjectWrapper--">freemarker.template.WrappingTemplateModel.getDefaultObjectWrapper()</a>
<div class="block"><span class="deprecationComment">Don't depend on this object, as it can be replace by anybody in the same JVM.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#getFullTemplatePath-freemarker.core.Environment-java.lang.String-java.lang.String-">freemarker.cache.TemplateCache.getFullTemplatePath(Environment, String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Environment.html#toFullTemplateName-java.lang.String-java.lang.String-"><code>Environment.toFullTemplateName(String, String)</code></a> instead, as that can throw
             <a href="freemarker/template/MalformedTemplateNameException.html" title="class in freemarker.template"><code>MalformedTemplateNameException</code></a>, and is on a more logical place anyway.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Template.html#getImports--">freemarker.template.Template.getImports()</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#getIncompatibleEnhancements--">freemarker.template.Configuration.getIncompatibleEnhancements()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#getInstance-java.lang.Object-freemarker.ext.util.ModelFactory-">freemarker.ext.beans.BeansWrapper.getInstance(Object, ModelFactory)</a>
<div class="block"><span class="deprecationComment">override <a href="freemarker/ext/beans/BeansWrapper.html#getModelFactory-java.lang.Class-"><code>BeansWrapper.getModelFactory(Class)</code></a> instead. Using this
 method will now bypass wrapper caching (if it's enabled) and always 
 result in creation of a new wrapper. This method will be removed in 2.4</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#getMacros--">freemarker.template.Template.getMacros()</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#getParsedIncompatibleEnhancements--">freemarker.template.Configuration.getParsedIncompatibleEnhancements()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#getRootTreeNode--">freemarker.template.Template.getRootTreeNode()</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/core/Configurable.html#getSetting-java.lang.String-">freemarker.core.Configurable.getSetting(String)</a>
<div class="block"><span class="deprecationComment">It's not possible in general to convert setting values to string,
     and thus it's impossible to ensure that <a href="freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>Configurable.setSetting(String, String)</code></a> will work with
     the returned value correctly.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Configurable.html#getSettings--">freemarker.core.Configurable.getSettings()</a>
<div class="block"><span class="deprecationComment">This method was always defective, and certainly it always
     will be. Don't use it. (Simply, it's hardly possible in general to
     convert setting values to text in a way that ensures that
     <a href="freemarker/core/Configurable.html#setSettings-java.util.Properties-"><code>Configurable.setSettings(Properties)</code></a> will work with them correctly.)</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/core/Environment.html#getTemplate--">freemarker.core.Environment.getTemplate()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/Environment.html#getMainTemplate--"><code>Environment.getMainTemplate()</code></a> instead (or <a href="freemarker/core/Environment.html#getCurrentNamespace--"><code>Environment.getCurrentNamespace()</code></a> and then
             <a href="freemarker/core/Environment.Namespace.html#getTemplate--"><code>Environment.Namespace.getTemplate()</code></a>); the value returned by this method is often not what you expect when
             it comes to macro/function invocations.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-">freemarker.cache.TemplateCache.getTemplate(String, Locale, String, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/cache/TemplateCache.html#getTemplate-java.lang.String-java.util.Locale-java.lang.Object-java.lang.String-boolean-"><code>TemplateCache.getTemplate(String, Locale, Object, String, boolean)</code></a>, which can return more detailed
             result when the template is missing.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/TemplateException.html#getTemplateName--">freemarker.template.TemplateException.getTemplateName()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/TemplateException.html#getTemplateSourceName--"><code>TemplateException.getTemplateSourceName()</code></a> instead, unless you are really sure that this is what you want.
             This method isn't really deprecated, it's just marked so to warn users about this.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/servlet/FreemarkerServlet.html#getTemplatePath--">freemarker.ext.servlet.FreemarkerServlet.getTemplatePath()</a>
<div class="block"><span class="deprecationComment">Not called by FreeMarker code, and there's no point to override this (unless to cause confusion).</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#getVersionNumber--">freemarker.template.Configuration.getVersionNumber()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#getVersion--"><code>Configuration.getVersion()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/StringUtil.html#HTMLEnc-java.lang.String-">freemarker.template.utility.StringUtil.HTMLEnc(String)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/utility/StringUtil.html#XHTMLEnc-java.lang.String-"><code>StringUtil.XHTMLEnc(String)</code></a> instead, because it escapes apostrophe-quote too.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/utility/StringUtil.html#isXMLID-java.lang.String-">freemarker.template.utility.StringUtil.isXMLID(String)</a>
<div class="block"><span class="deprecationComment">Don't use this outside FreeMarker; it's name if misleading, and it doesn't follow the XML specs.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/StringUtil.html#jsStringEnc-java.lang.String-boolean-">freemarker.template.utility.StringUtil.jsStringEnc(String, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/utility/StringUtil.html#jsStringEnc-java.lang.String-freemarker.template.utility.StringUtil.JsStringEncCompatibility-"><code>StringUtil.jsStringEnc(String, JsStringEncCompatibility)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/dom/Transform.html#main-java.lang.String:A-">freemarker.ext.dom.Transform.main(String[])</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/jdom/NodeListModel.html#main-java.lang.String:A-">freemarker.ext.jdom.NodeListModel.main(String[])</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/utility/ToCanonical.html#main-java.lang.String:A-">freemarker.template.utility.ToCanonical.main(String[])</a>
<div class="block"><span class="deprecationComment">Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/utility/DeepUnwrap.html#premissiveUnwrap-freemarker.template.TemplateModel-">freemarker.template.utility.DeepUnwrap.premissiveUnwrap(TemplateModel)</a>
<div class="block"><span class="deprecationComment">the name of this method is mistyped. Use 
 <a href="freemarker/template/utility/DeepUnwrap.html#permissiveUnwrap-freemarker.template.TemplateModel-"><code>DeepUnwrap.permissiveUnwrap(TemplateModel)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/log/Logger.html#selectLoggerLibrary-int-">freemarker.log.Logger.selectLoggerLibrary(int)</a>
<div class="block"><span class="deprecationComment">This method isn't reliable, unless you can somehow ensure that you access the FreeMarker classes
             first; use the <a href="freemarker/log/Logger.html#SYSTEM_PROPERTY_NAME_LOGGER_LIBRARY">"org.freemarker.loggerLibrary"</a> Java system property instead, like
             <code>java ... -Dorg.freemarker.loggerLibrary=slf4j</code>. See
             <a href="freemarker/log/Logger.html#SYSTEM_PROPERTY_NAME_LOGGER_LIBRARY"><code>Logger.SYSTEM_PROPERTY_NAME_LOGGER_LIBRARY</code></a> for more.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/log/Logger.html#setCategoryPrefix-java.lang.String-">freemarker.log.Logger.setCategoryPrefix(String)</a>
<div class="block"><span class="deprecationComment">This wasn't reliable, unless you can somehow ensure that you access the FreeMarker classes first. As
             it's not known to be useful for users, consider it removed.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#setConfiguration-freemarker.template.Configuration-">freemarker.cache.TemplateCache.setConfiguration(Configuration)</a>
<div class="block"><span class="deprecationComment">Use the <a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-freemarker.cache.CacheStorage-freemarker.template.Configuration-"><code>TemplateCache.TemplateCache(TemplateLoader, CacheStorage, Configuration)</code></a> constructor.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#setDefaultConfiguration-freemarker.template.Configuration-">freemarker.template.Configuration.setDefaultConfiguration(Configuration)</a>
<div class="block"><span class="deprecationComment">Using the "default" <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instance can
 easily lead to erroneous, unpredictable behaviour.
 See more <a href="freemarker/template/Configuration.html#getDefaultConfiguration--"><code>here...</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/WrappingTemplateModel.html#setDefaultObjectWrapper-freemarker.template.ObjectWrapper-">freemarker.template.WrappingTemplateModel.setDefaultObjectWrapper(ObjectWrapper)</a>
<div class="block"><span class="deprecationComment">This method has VM-wide effect, which makes it unsuitable for application where multiple components
      might use FreeMarker internally.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/dom/NodeModel.html#setDocumentBuilderFactory-javax.xml.parsers.DocumentBuilderFactory-">freemarker.ext.dom.NodeModel.setDocumentBuilderFactory(DocumentBuilderFactory)</a>
<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>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Template.html#setEncoding-java.lang.String-">freemarker.template.Template.setEncoding(String)</a>
<div class="block"><span class="deprecationComment">Should only be used internally, and might will be removed later.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/dom/NodeModel.html#setErrorHandler-org.xml.sax.ErrorHandler-">freemarker.ext.dom.NodeModel.setErrorHandler(ErrorHandler)</a>
<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>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#setIncompatibleEnhancements-java.lang.String-">freemarker.template.Configuration.setIncompatibleEnhancements(String)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#Configuration-freemarker.template.Version-"><code>Configuration.Configuration(Version)</code></a>, or
    as last chance, <a href="freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-"><code>Configuration.setIncompatibleImprovements(Version)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#setNullModel-freemarker.template.TemplateModel-">freemarker.ext.beans.BeansWrapper.setNullModel(TemplateModel)</a>
<div class="block"><span class="deprecationComment">Changing the <code>null</code> model can cause a lot of confusion; don't do it.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#setSharedVaribles-java.util.Map-">freemarker.template.Configuration.setSharedVaribles(Map)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#setSharedVariables-java.util.Map-"><code>Configuration.setSharedVariables(Map)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Configurable.html#setStrictBeanModels-boolean-">freemarker.core.Configurable.setStrictBeanModels(boolean)</a>
<div class="block"><span class="deprecationComment">Set this on the <a href="freemarker/template/ObjectWrapper.html" title="interface in freemarker.template"><code>ObjectWrapper</code></a> itself.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#setStrictSyntaxMode-boolean-">freemarker.template.Configuration.setStrictSyntaxMode(boolean)</a>
<div class="block"><span class="deprecationComment">Only <code>true</code> (the default) value will be supported sometimes in the future.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#setTemplateUpdateDelay-int-">freemarker.template.Configuration.setTemplateUpdateDelay(int)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#setTemplateUpdateDelayMilliseconds-long-"><code>Configuration.setTemplateUpdateDelayMilliseconds(long)</code></a> instead, because the time granularity of this method
             is often misunderstood to be milliseconds.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleSequence.html#toList--">freemarker.template.SimpleSequence.toList()</a>
<div class="block"><span class="deprecationComment">No replacement exists; not a reliable way of getting back the original list elemnts.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Environment.html#visit-freemarker.core.TemplateElement-freemarker.template.TemplateDirectiveModel-java.util.Map-java.util.List-">freemarker.core.Environment.visit(TemplateElement, TemplateDirectiveModel, Map, List)</a>
<div class="block"><span class="deprecationComment">Should be internal API</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="constructor">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Constructors table, listing deprecated constructors, and an explanation">
<caption><span>Deprecated Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="freemarker/ext/beans/BeansWrapper.html#BeansWrapper--">freemarker.ext.beans.BeansWrapper()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/ext/beans/BeansWrapperBuilder.html" title="class in freemarker.ext.beans"><code>BeansWrapperBuilder</code></a> or, in rare cases, <a href="freemarker/ext/beans/BeansWrapper.html#BeansWrapper-freemarker.template.Version-"><code>BeansWrapper.BeansWrapper(Version)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/cache/ClassTemplateLoader.html#ClassTemplateLoader--">freemarker.cache.ClassTemplateLoader()</a>
<div class="block"><span class="deprecationComment">It's a confusing constructor, and seldom useful; use <a href="freemarker/cache/ClassTemplateLoader.html#ClassTemplateLoader-java.lang.Class-java.lang.String-"><code>ClassTemplateLoader.ClassTemplateLoader(Class, String)</code></a>
             instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/ClassTemplateLoader.html#ClassTemplateLoader-java.lang.Class-">freemarker.cache.ClassTemplateLoader(Class&lt;?&gt;)</a>
<div class="block"><span class="deprecationComment">It's confusing that the base path is <code>""</code>; use <a href="freemarker/cache/ClassTemplateLoader.html#ClassTemplateLoader-java.lang.Class-java.lang.String-"><code>ClassTemplateLoader.ClassTemplateLoader(Class, String)</code></a>
             instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/Configurable.html#Configurable--">freemarker.core.Configurable()</a>
<div class="block"><span class="deprecationComment">This shouldn't even be public; don't use it.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Configuration.html#Configuration--">freemarker.template.Configuration()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/Configuration.html#Configuration-freemarker.template.Version-"><code>Configuration.Configuration(Version)</code></a> instead. Note that the version can be still modified later with
     <a href="freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-"><code>Configuration.setIncompatibleImprovements(Version)</code></a> (or
     <a href="freemarker/core/Configurable.html#setSettings-java.util.Properties-"><code>Configurable.setSettings(Properties)</code></a>).</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/DefaultObjectWrapper.html#DefaultObjectWrapper--">freemarker.template.DefaultObjectWrapper()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/DefaultObjectWrapperBuilder.html" title="class in freemarker.template"><code>DefaultObjectWrapperBuilder</code></a>, or in rare cases,
          <a href="freemarker/template/DefaultObjectWrapper.html#DefaultObjectWrapper-freemarker.template.Version-"><code>DefaultObjectWrapper.DefaultObjectWrapper(Version)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/FileTemplateLoader.html#FileTemplateLoader--">freemarker.cache.FileTemplateLoader()</a>
<div class="block"><span class="deprecationComment">Relying on what the current directory is is a bad practice; use
             <a href="freemarker/cache/FileTemplateLoader.html#FileTemplateLoader-java.io.File-"><code>FileTemplateLoader.FileTemplateLoader(File)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/ParseException.html#ParseException--">freemarker.core.ParseException()</a>
<div class="block"><span class="deprecationComment">Use a constructor to which you pass description, template, and positions.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/core/ParseException.html#ParseException-java.lang.String-int-int-">freemarker.core.ParseException(String, int, int)</a>
<div class="block"><span class="deprecationComment">Use a constructor to which you can also pass the template, and the end positions.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/core/ParseException.html#ParseException-java.lang.String-freemarker.template.Template-int-int-">freemarker.core.ParseException(String, Template, int, int)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/ParseException.html#ParseException-java.lang.String-freemarker.template.Template-int-int-int-int-"><code>ParseException.ParseException(String, Template, int, int, int, int)</code></a> instead, as IDE-s need the end
 position of the error too.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/core/ParseException.html#ParseException-java.lang.String-freemarker.template.Template-int-int-java.lang.Throwable-">freemarker.core.ParseException(String, Template, int, int, Throwable)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/core/ParseException.html#ParseException-java.lang.String-freemarker.template.Template-int-int-int-int-java.lang.Throwable-"><code>ParseException.ParseException(String, Template, int, int, int, int, Throwable)</code></a> instead, as IDE-s need
 the end position of the error too.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/ext/servlet/ServletContextHashModel.html#ServletContextHashModel-javax.servlet.ServletContext-freemarker.template.ObjectWrapper-">freemarker.ext.servlet.ServletContextHashModel(ServletContext, ObjectWrapper)</a>
<div class="block"><span class="deprecationComment">use 
 <a href="freemarker/ext/servlet/ServletContextHashModel.html#ServletContextHashModel-javax.servlet.GenericServlet-freemarker.template.ObjectWrapper-"><code>ServletContextHashModel.ServletContextHashModel(GenericServlet, ObjectWrapper)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.util.Collection-">freemarker.template.SimpleCollection(Collection)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.lang.Iterable-freemarker.template.ObjectWrapper-"><code>SimpleCollection.SimpleCollection(Iterable, ObjectWrapper)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.lang.Iterable-">freemarker.template.SimpleCollection(Iterable)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.lang.Iterable-freemarker.template.ObjectWrapper-"><code>SimpleCollection.SimpleCollection(Iterable, ObjectWrapper)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.util.Iterator-">freemarker.template.SimpleCollection(Iterator)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleCollection.html#SimpleCollection-java.util.Iterator-freemarker.template.ObjectWrapper-"><code>SimpleCollection.SimpleCollection(Iterator, ObjectWrapper)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/SimpleHash.html#SimpleHash--">freemarker.template.SimpleHash()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleHash.html#SimpleHash-freemarker.template.ObjectWrapper-"><code>SimpleHash.SimpleHash(ObjectWrapper)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleHash.html#SimpleHash-java.util.Map-">freemarker.template.SimpleHash(Map)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleHash.html#SimpleHash-java.util.Map-freemarker.template.ObjectWrapper-"><code>SimpleHash.SimpleHash(Map, ObjectWrapper)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/SimpleObjectWrapper.html#SimpleObjectWrapper--">freemarker.template.SimpleObjectWrapper()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleObjectWrapper.html#SimpleObjectWrapper-freemarker.template.Version-"><code>SimpleObjectWrapper.SimpleObjectWrapper(Version)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleSequence.html#SimpleSequence--">freemarker.template.SimpleSequence()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleSequence.html#SimpleSequence-freemarker.template.ObjectWrapper-"><code>SimpleSequence.SimpleSequence(ObjectWrapper)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/SimpleSequence.html#SimpleSequence-java.util.Collection-">freemarker.template.SimpleSequence(Collection)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleSequence.html#SimpleSequence-java.util.Collection-freemarker.template.ObjectWrapper-"><code>SimpleSequence.SimpleSequence(Collection, ObjectWrapper)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/SimpleSequence.html#SimpleSequence-int-">freemarker.template.SimpleSequence(int)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/SimpleSequence.html#SimpleSequence-int-freemarker.template.ObjectWrapper-"><code>SimpleSequence.SimpleSequence(int, ObjectWrapper)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/Template.html#Template-java.lang.String-java.io.Reader-">freemarker.template.Template(String, Reader)</a>
<div class="block"><span class="deprecationComment">This constructor uses the "default" <a href="freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>
 instance, which can easily lead to erroneous, unpredictable behavior.
 See more <a href="freemarker/template/Configuration.html#getDefaultConfiguration--"><code>here...</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#TemplateCache--">freemarker.cache.TemplateCache()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-"><code>TemplateCache.TemplateCache(TemplateLoader)</code></a> instead. The default loader is useless in most
     applications, also it can mean a security risk.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-">freemarker.cache.TemplateCache(TemplateLoader)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-freemarker.cache.CacheStorage-freemarker.template.Configuration-"><code>TemplateCache.TemplateCache(TemplateLoader, CacheStorage, Configuration)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-freemarker.cache.CacheStorage-">freemarker.cache.TemplateCache(TemplateLoader, CacheStorage)</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/cache/TemplateCache.html#TemplateCache-freemarker.cache.TemplateLoader-freemarker.cache.CacheStorage-freemarker.template.Configuration-"><code>TemplateCache.TemplateCache(TemplateLoader, CacheStorage, Configuration)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="freemarker/template/WrappingTemplateModel.html#WrappingTemplateModel--">freemarker.template.WrappingTemplateModel()</a>
<div class="block"><span class="deprecationComment">Use <a href="freemarker/template/WrappingTemplateModel.html#WrappingTemplateModel-freemarker.template.ObjectWrapper-"><code>WrappingTemplateModel.WrappingTemplateModel(ObjectWrapper)</code></a> instead; this method uses the deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="freemarker/template/Template.WrongEncodingException.html#WrongEncodingException-java.lang.String-">freemarker.template.Template.WrongEncodingException(String)</a>
<div class="block"><span class="deprecationComment">Use <code>#WrongEncodingException(String, String)</code>.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= 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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;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>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
