<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>Deprecated List</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>

<link rel="shortcut icon" href="/favicon.png">
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Deprecated List";
        }
    }
    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><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="#annotation.type">Deprecated Annotation Types</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="org/apache/openejb/resource/jdbc/cipher/PasswordCipher.html" title="interface in org.apache.openejb.resource.jdbc.cipher">org.apache.openejb.resource.jdbc.cipher.PasswordCipher</a></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="org/apache/openejb/core/ivm/naming/InitContextFactory.html" title="class in org.apache.openejb.core.ivm.naming">org.apache.openejb.core.ivm.naming.InitContextFactory</a>
<div class="block"><span class="deprecationComment">Use org.apache.openejb.core.LocalInitialContextFactory</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/tomee/loader/LoaderServlet.html" title="class in org.apache.tomee.loader">org.apache.tomee.loader.LoaderServlet</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/client/LocalInitialContext.html" title="class in org.apache.openejb.client">org.apache.openejb.client.LocalInitialContext</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.core.LocalInitialContext</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/core/LocalInitialContextFactory.html" title="class in org.apache.openejb.core">org.apache.openejb.core.LocalInitialContextFactory</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/client/LocalInitialContextFactory.html" title="class in org.apache.openejb.client">org.apache.openejb.client.LocalInitialContextFactory</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.core.LocalInitialContextFactory</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/openejb/client/LocalInitialContextFactory.html" title="class in org.openejb.client">org.openejb.client.LocalInitialContextFactory</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.core.LocalInitialContextFactory</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/openejb/OpenEJB.html" title="class in org.openejb">org.openejb.OpenEJB</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.OpenEJB</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/resource/jdbc/cipher/PlainTextPasswordCipher.html" title="class in org.apache.openejb.resource.jdbc.cipher">org.apache.openejb.resource.jdbc.cipher.PlainTextPasswordCipher</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/openejb/client/RemoteInitialContextFactory.html" title="class in org.openejb.client">org.openejb.client.RemoteInitialContextFactory</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.client.RemoteInitialContextFactory</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/resource/jdbc/cipher/StaticDESPasswordCipher.html" title="class in org.apache.openejb.resource.jdbc.cipher">org.apache.openejb.resource.jdbc.cipher.StaticDESPasswordCipher</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/openejb/client/TomcatEjbFactory.html" title="class in org.openejb.client">org.openejb.client.TomcatEjbFactory</a>
<div class="block"><span class="deprecationComment">use org.apache.openejb.client.TomcatEjbFactory</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/server/httpd/WebBeansListenerHelper.html" title="class in org.apache.openejb.server.httpd">org.apache.openejb.server.httpd.WebBeansListenerHelper</a>
<div class="block"><span class="deprecationComment">this features is imo highly questionable. We should rather fix the root of the issue</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="annotation.type">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Annotation Types table, listing deprecated annotation types, and an explanation">
<caption><span>Deprecated Annotation Types</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Annotation Type and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/junit/AppResource.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.AppResource</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/junit/Classes.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Classes</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/junit/Component.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Component</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/junit/Configuration.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Configuration</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/junit/Descriptor.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Descriptor</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/junit/Descriptors.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Descriptors</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/junit/EnableServices.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.EnableServices</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/junit/MockInjector.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.MockInjector</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/junit/Module.html" title="annotation in org.apache.openejb.junit">org.apache.openejb.junit.Module</a></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="org/apache/openejb/maven/plugin/BuildTomEEMojo.html#zip">org.apache.openejb.maven.plugin.BuildTomEEMojo.zip</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/maven/plugin/BuildTomEEMojo.html#zipFile">org.apache.openejb.maven.plugin.BuildTomEEMojo.zipFile</a></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="org/apache/openejb/jee/Beans.html#addManagedClass-java.lang.Class-">org.apache.openejb.jee.Beans.addManagedClass(Class)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/jee/Beans.html#addManagedClass-java.lang.String-">org.apache.openejb.jee.Beans.addManagedClass(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/assembler/classic/Assembler.html#createResource-org.apache.openejb.assembler.classic.ResourceInfo-">org.apache.openejb.assembler.classic.Assembler.createResource(ResourceInfo)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/server/cxf/rs/CxfRsHttpListener.html#deployEJB-java.lang.String-java.lang.String-org.apache.openejb.BeanContext-java.util.Collection-org.apache.openejb.assembler.classic.util.ServiceConfiguration-">org.apache.openejb.server.cxf.rs.CxfRsHttpListener.deployEJB(String, String, BeanContext, Collection&lt;Object&gt;, ServiceConfiguration)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/server/cxf/rs/CxfRsHttpListener.html#deployPojo-java.lang.ClassLoader-java.lang.String-java.lang.String-java.lang.Class-Application-java.util.Collection-javax.naming.Context-WebBeansContext-java.util.Collection-org.apache.openejb.assembler.classic.util.ServiceConfiguration-">org.apache.openejb.server.cxf.rs.CxfRsHttpListener.deployPojo(ClassLoader, String, String, Class&lt;?&gt;, Application, Collection&lt;Injection&gt;, Context, WebBeansContext, Collection&lt;Object&gt;, ServiceConfiguration)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/server/cxf/rs/CxfRsHttpListener.html#deploySingleton-java.lang.String-java.lang.String-java.lang.Object-Application-java.util.Collection-org.apache.openejb.assembler.classic.util.ServiceConfiguration-">org.apache.openejb.server.cxf.rs.CxfRsHttpListener.deploySingleton(String, String, Object, Application, Collection&lt;Object&gt;, ServiceConfiguration)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/assembler/classic/Assembler.html#destroyApplication-org.apache.openejb.AppContext-">org.apache.openejb.assembler.classic.Assembler.destroyApplication(AppContext)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/config/sys/Container.html#getCtype--">org.apache.openejb.config.sys.Container.getCtype()</a>
<div class="block"><span class="deprecationComment">use getType instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/AppContext.html#getDeployments--">org.apache.openejb.AppContext.getDeployments()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/server/httpd/HttpRequestImpl.html#getParameters--">org.apache.openejb.server.httpd.HttpRequestImpl.getParameters()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/math/util/ResizableDoubleArray.html#getValues--">org.apache.openejb.math.util.ResizableDoubleArray.getValues()</a>
<div class="block"><span class="deprecationComment">replaced by <a href="org/apache/openejb/math/util/ResizableDoubleArray.html#getInternalValues--"><code>ResizableDoubleArray.getInternalValues()</code></a> as of 2.0</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/spi/ContainerSystem.html#getWebContext-java.lang.String-">org.apache.openejb.spi.ContainerSystem.getWebContext(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/tomee/catalina/TomcatLoader.html#init-java.util.Properties-">org.apache.tomee.catalina.TomcatLoader.init(Properties)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/config/DeploymentLoader.html#load-java.io.File-">org.apache.openejb.config.DeploymentLoader.load(File)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/config/DeploymentsResolver.html#loadFromClasspath-org.apache.openejb.loader.FileUtils-java.util.List-java.lang.ClassLoader-">org.apache.openejb.config.DeploymentsResolver.loadFromClasspath(FileUtils, List&lt;URL&gt;, ClassLoader)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/config/DeploymentsResolver.html#processUrls-java.lang.String-java.util.List-java.lang.ClassLoader-java.util.Set-org.apache.openejb.loader.FileUtils-java.util.List-">org.apache.openejb.config.DeploymentsResolver.processUrls(String, List&lt;URL&gt;, ClassLoader, Set&lt;RequireDescriptors&gt;, FileUtils, List&lt;URL&gt;)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/config/NewLoaderLogic.html#setExclusions-java.lang.String:A-">org.apache.openejb.config.NewLoaderLogic.setExclusions(String[])</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/client/ConnectionManager.html#setFactory-org.apache.openejb.client.ConnectionFactory-">org.apache.openejb.client.ConnectionManager.setFactory(ConnectionFactory)</a>
<div class="block"><span class="deprecationComment">Use register("default", factory);</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/core/mdb/MdbContainerFactory.html#setInstanceLimit-int-">org.apache.openejb.core.mdb.MdbContainerFactory.setInstanceLimit(int)</a>
<div class="block"><span class="deprecationComment">use MaxSize</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/openejb/core/stateless/StatelessContainerFactory.html#setPoolSize-int-">org.apache.openejb.core.stateless.StatelessContainerFactory.setPoolSize(int)</a>
<div class="block"><span class="deprecationComment">use MaxSize</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/openejb/core/stateless/StatelessContainerFactory.html#setTimeOut-org.apache.openejb.util.Duration-">org.apache.openejb.core.stateless.StatelessContainerFactory.setTimeOut(Duration)</a>
<div class="block"><span class="deprecationComment">use AccessTimeout</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="org/apache/openejb/server/ejbd/KeepAliveServer.html#KeepAliveServer-org.apache.openejb.server.ServerService-">org.apache.openejb.server.ejbd.KeepAliveServer(ServerService)</a></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><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>
