Files
123123/doc-10.0.10/Docs2017/api/mgmt_api/javax/management/MBeanServerFactory.html
T
GizzlerandCursor 58b7826162 Add live TLS certificate probing and improve restart error handling.
Configure CertificateCheckUrl per container for curl-like TLS checks, classify Sonic permission errors, and extend setup wizard for container management.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 13:16:21 +02:00

517 lines
26 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_19) on Fri Aug 12 11:25:10 EDT 2011 -->
<TITLE>
MBeanServerFactory (Management Application API)
</TITLE>
<META NAME="keywords" CONTENT="javax.management.MBeanServerFactory class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="MBeanServerFactory (Management Application API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="MBeanServerFactory.html#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Sonic Management API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="MBeanServerDelegateMBean.html" title="interface in javax.management"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="MBeanServerInvocationHandler.html" title="class in javax.management"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../index.html@javax%252Fmanagement%252FMBeanServerFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="MBeanServerFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="MBeanServerFactory.html#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="MBeanServerFactory.html#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
javax.management</FONT>
<BR>
Class MBeanServerFactory</H2>
<PRE>
java.lang.Object
<IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>javax.management.MBeanServerFactory</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>MBeanServerFactory</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<p>Provides MBean server references. There are no instances of
this class.</p>
<p>Since JMX 1.2 this class makes it possible to replace the default
MBeanServer implementation. This is done using the
<A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A> class.
The class of the initial MBeanServerBuilder to be
instantiated can be specified through the
<b>javax.management.builder.initial</b> system property.
The specified class must be a public subclass of
<A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A>, and must have a public
empty constructor.
<p>By default, if no value for that property is specified, an instance of
<A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>javax.management.MBeanServerBuilder</CODE></A>
is created. Otherwise, the MBeanServerFactory attempts to load the
specified class using
<CODE>Thread.currentThread().getContextClassLoader()</CODE>, or if that is null,
<CODE>Class.forName()</CODE>. Then
it creates an initial instance of that Class using
<CODE>Class.newInstance()</CODE>. If any checked exception
is raised during this process (e.g.
<CODE>ClassNotFoundException</CODE>,
<CODE>InstantiationException</CODE>) the MBeanServerFactory
will propagate this exception from within a RuntimeException.</p>
<p>The <b>javax.management.builder.initial</b> system property is
consulted every time a new MBeanServer needs to be created, and the
class pointed to by that property is loaded. If that class is different
from that of the current MBeanServerBuilder, then a new MBeanServerBuilder
is created. Otherwise, the MBeanServerFactory may create a new
MBeanServerBuilder or reuse the current one.</p>
<p>If the class pointed to by the property cannot be
loaded, or does not correspond to a valid subclass of MBeanServerBuilder
then an exception is propagated, and no MBeanServer can be created until
the <b>javax.management.builder.initial</b> system property is reset to
valid value.</p>
<p>The MBeanServerBuilder makes it possible to wrap the MBeanServers
returned by the default MBeanServerBuilder implementation, for the purpose
of e.g. adding an additional security layer.</p>
<P>
<P>
<HR>
<P>
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#createMBeanServer()">createMBeanServer</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new object implementing the MBeanServer interface
with a standard default domain name.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#createMBeanServer(java.lang.String)">createMBeanServer</A></B>(java.lang.String&nbsp;domain)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new object implementing the <A HREF="MBeanServer.html" title="interface in javax.management"><CODE>MBeanServer</CODE></A>
interface with the specified default domain name.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.util.ArrayList</CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#findMBeanServer(java.lang.String)">findMBeanServer</A></B>(java.lang.String&nbsp;agentId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a list of registered MBeanServer objects.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="https://documentation.progress.com/output/Sonic/8.5.0/Docs8.5/api/mgmt_api/javax/management/loading.ClassLoaderRepository.html" title="class or interface in javax.management">javax.management.loading.ClassLoaderRepository</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#getClassLoaderRepository(javax.management.MBeanServer)">getClassLoaderRepository</A></B>(<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A>&nbsp;server)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the ClassLoaderRepository used by the given MBeanServer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#newMBeanServer()">newMBeanServer</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new object implementing the MBeanServer interface
with a standard default domain name, without keeping an
internal reference to this new object.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#newMBeanServer(java.lang.String)">newMBeanServer</A></B>(java.lang.String&nbsp;domain)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new object implementing the MBeanServer interface
with the specified default domain name, without keeping an
internal reference to this new object.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="MBeanServerFactory.html#releaseMBeanServer(javax.management.MBeanServer)">releaseMBeanServer</A></B>(<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A>&nbsp;mbeanServer)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove internal MBeanServerFactory references to a created
MBeanServer.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="createMBeanServer()"><!-- --></A><H3>
createMBeanServer</H3>
<PRE>
public static <A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A> <B>createMBeanServer</B>()</PRE>
<DL>
<DD><p>Return a new object implementing the MBeanServer interface
with a standard default domain name. The default domain name
is used as the domain part in the ObjectName of MBeans when the
domain is specified by the user is null.</p>
<p>The standard default domain name is defined in <CODE>ServiceName.DOMAIN</CODE>.</p>
<p>The MBeanServer reference is internally kept. This will
allow <CODE>findMBeanServer</CODE> to return a reference to
this MBeanServer object.</p>
<p>This method is equivalent to <code>createMBeanServer(null)</code>.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the newly created MBeanServer.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and the
caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("createMBeanServer")</code>.
<DD><CODE><A HREF="JMRuntimeException.html" title="class in javax.management">JMRuntimeException</A></CODE> - if the property
<code>javax.management.builder.initial</code> exists but the
class it names cannot be instantiated through a public
no-argument constructor; or if the instantiated builder returns
null from its <A HREF="MBeanServerBuilder.html#newMBeanServerDelegate()"><CODE>newMBeanServerDelegate</CODE></A> or <A HREF="MBeanServerBuilder.html#newMBeanServer(java.lang.String, javax.management.MBeanServer, javax.management.MBeanServerDelegate)"><CODE>newMBeanServer</CODE></A> methods.
<DD><CODE>java.lang.ClassCastException</CODE> - if the property
<code>javax.management.builder.initial</code> exists and can be
instantiated but is not assignment compatible with <A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A>.</DL>
</DD>
</DL>
<HR>
<A NAME="createMBeanServer(java.lang.String)"><!-- --></A><H3>
createMBeanServer</H3>
<PRE>
public static <A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A> <B>createMBeanServer</B>(java.lang.String&nbsp;domain)</PRE>
<DL>
<DD><p>Return a new object implementing the <A HREF="MBeanServer.html" title="interface in javax.management"><CODE>MBeanServer</CODE></A>
interface with the specified default domain name. The given
domain name is used as the domain part in the ObjectName of
MBeans when the domain is specified by the user is null.</p>
<p>The MBeanServer reference is internally kept. This will
allow <CODE>findMBeanServer</CODE> to return a reference to
this MBeanServer object.</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>domain</CODE> - the default domain name for the created
MBeanServer. This is the value that will be returned by <A HREF="MBeanServer.html#getDefaultDomain()"><CODE>MBeanServer.getDefaultDomain()</CODE></A>.
<DT><B>Returns:</B><DD>the newly created MBeanServer.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and
the caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("createMBeanServer")</code>.
<DD><CODE><A HREF="JMRuntimeException.html" title="class in javax.management">JMRuntimeException</A></CODE> - if the property
<code>javax.management.builder.initial</code> exists but the
class it names cannot be instantiated through a public
no-argument constructor; or if the instantiated builder returns
null from its <A HREF="MBeanServerBuilder.html#newMBeanServerDelegate()"><CODE>newMBeanServerDelegate</CODE></A> or <A HREF="MBeanServerBuilder.html#newMBeanServer(java.lang.String, javax.management.MBeanServer, javax.management.MBeanServerDelegate)"><CODE>newMBeanServer</CODE></A> methods.
<DD><CODE>java.lang.ClassCastException</CODE> - if the property
<code>javax.management.builder.initial</code> exists and can be
instantiated but is not assignment compatible with <A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A>.</DL>
</DD>
</DL>
<HR>
<A NAME="findMBeanServer(java.lang.String)"><!-- --></A><H3>
findMBeanServer</H3>
<PRE>
public static java.util.ArrayList <B>findMBeanServer</B>(java.lang.String&nbsp;agentId)</PRE>
<DL>
<DD><p>Return a list of registered MBeanServer objects. A
registered MBeanServer object is one that was created by one of
the <code>createMBeanServer</code> methods and not subsequently
released with <code>releaseMBeanServer</code>.</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>agentId</CODE> - The agent identifier of the MBeanServer to
retrieve. If this parameter is null, all registered
MBeanServers in this JVM are returned. Otherwise, only
MBeanServers whose id is equal to <code>agentId</code> are
returned. The id of an MBeanServer is the
<code>MBeanServerId</code> attribute of its delegate MBean.
<DT><B>Returns:</B><DD>A list of MBeanServer objects.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and the
caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("findMBeanServer")</code>.</DL>
</DD>
</DL>
<HR>
<A NAME="getClassLoaderRepository(javax.management.MBeanServer)"><!-- --></A><H3>
getClassLoaderRepository</H3>
<PRE>
public static <A HREF="https://documentation.progress.com/output/Sonic/8.5.0/Docs8.5/api/mgmt_api/javax/management/loading.ClassLoaderRepository.html" title="class or interface in javax.management">javax.management.loading.ClassLoaderRepository</A> <B>getClassLoaderRepository</B>(<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A>&nbsp;server)</PRE>
<DL>
<DD>Return the ClassLoaderRepository used by the given MBeanServer.
This method is equivalent to <A HREF="MBeanServer.html#getClassLoaderRepository()"><CODE>server.getClassLoaderRepository()</CODE></A>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>server</CODE> - The MBeanServer under examination. Since JMX 1.2,
if <code>server</code> is <code>null</code>, the result is a
<CODE>NullPointerException</CODE>. This behaviour differs from what
was implemented in JMX 1.1 - where the possibility to use
<code>null</code> was deprecated.
<DT><B>Returns:</B><DD>The Class Loader Repository used by the given MBeanServer.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and
the caller's permissions do not include or imply <code><A HREF="MBeanPermission.html" title="class in javax.management"><CODE>MBeanPermission</CODE></A>("getClassLoaderRepository")</code>.
<DD><CODE>java.lang.NullPointerException</CODE> - if <code>server</code> is null.<DT><B>Since:</B></DT>
<DD>JMX 1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="newMBeanServer()"><!-- --></A><H3>
newMBeanServer</H3>
<PRE>
public static <A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A> <B>newMBeanServer</B>()</PRE>
<DL>
<DD><p>Return a new object implementing the MBeanServer interface
with a standard default domain name, without keeping an
internal reference to this new object. The default domain name
is used as the domain part in the ObjectName of MBeans when the
domain is specified by the user is null.</p>
<p>The standard default domain name is defined in <CODE>ServiceName.DOMAIN</CODE>.</p>
<p>No reference is kept. <CODE>findMBeanServer</CODE> will not
be able to return a reference to this MBeanServer object, but
the garbage collector will be able to remove the MBeanServer
object when it is no longer referenced.</p>
<p>This method is equivalent to <code>newMBeanServer(null)</code>.</p>
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the newly created MBeanServer.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and the
caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("newMBeanServer")</code>.
<DD><CODE><A HREF="JMRuntimeException.html" title="class in javax.management">JMRuntimeException</A></CODE> - if the property
<code>javax.management.builder.initial</code> exists but the
class it names cannot be instantiated through a public
no-argument constructor; or if the instantiated builder returns
null from its <A HREF="MBeanServerBuilder.html#newMBeanServerDelegate()"><CODE>newMBeanServerDelegate</CODE></A> or <A HREF="MBeanServerBuilder.html#newMBeanServer(java.lang.String, javax.management.MBeanServer, javax.management.MBeanServerDelegate)"><CODE>newMBeanServer</CODE></A> methods.
<DD><CODE>java.lang.ClassCastException</CODE> - if the property
<code>javax.management.builder.initial</code> exists and can be
instantiated but is not assignment compatible with <A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A>.</DL>
</DD>
</DL>
<HR>
<A NAME="newMBeanServer(java.lang.String)"><!-- --></A><H3>
newMBeanServer</H3>
<PRE>
public static <A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A> <B>newMBeanServer</B>(java.lang.String&nbsp;domain)</PRE>
<DL>
<DD><p>Return a new object implementing the MBeanServer interface
with the specified default domain name, without keeping an
internal reference to this new object. The given domain name
is used as the domain part in the ObjectName of MBeans when the
domain is specified by the user is null.</p>
<p>No reference is kept. <CODE>findMBeanServer</CODE> will not
be able to return a reference to this MBeanServer object, but
the garbage collector will be able to remove the MBeanServer
object when it is no longer referenced.</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>domain</CODE> - the default domain name for the created
MBeanServer. This is the value that will be returned by <A HREF="MBeanServer.html#getDefaultDomain()"><CODE>MBeanServer.getDefaultDomain()</CODE></A>.
<DT><B>Returns:</B><DD>the newly created MBeanServer.
<DT><B>Throws:</B>
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and the
caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("newMBeanServer")</code>.
<DD><CODE><A HREF="JMRuntimeException.html" title="class in javax.management">JMRuntimeException</A></CODE> - if the property
<code>javax.management.builder.initial</code> exists but the
class it names cannot be instantiated through a public
no-argument constructor; or if the instantiated builder returns
null from its <A HREF="MBeanServerBuilder.html#newMBeanServerDelegate()"><CODE>newMBeanServerDelegate</CODE></A> or <A HREF="MBeanServerBuilder.html#newMBeanServer(java.lang.String, javax.management.MBeanServer, javax.management.MBeanServerDelegate)"><CODE>newMBeanServer</CODE></A> methods.
<DD><CODE>java.lang.ClassCastException</CODE> - if the property
<code>javax.management.builder.initial</code> exists and can be
instantiated but is not assignment compatible with <A HREF="MBeanServerBuilder.html" title="class in javax.management"><CODE>MBeanServerBuilder</CODE></A>.</DL>
</DD>
</DL>
<HR>
<A NAME="releaseMBeanServer(javax.management.MBeanServer)"><!-- --></A><H3>
releaseMBeanServer</H3>
<PRE>
public static void <B>releaseMBeanServer</B>(<A HREF="MBeanServer.html" title="interface in javax.management">MBeanServer</A>&nbsp;mbeanServer)</PRE>
<DL>
<DD>Remove internal MBeanServerFactory references to a created
MBeanServer. This allows the garbage collector to remove the
MBeanServer object.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mbeanServer</CODE> - the MBeanServer object to remove.
<DT><B>Throws:</B>
<DD><CODE>java.lang.IllegalArgumentException</CODE> - if
<code>mbeanServer</code> was not generated by one of the
<code>createMBeanServer</code> methods, or if
<code>releaseMBeanServer</code> was already called on it.
<DD><CODE>java.lang.SecurityException</CODE> - if there is a SecurityManager and
the caller's permissions do not include or imply <code><A HREF="MBeanServerPermission.html" title="class in javax.management"><CODE>MBeanServerPermission</CODE></A>("releaseMBeanServer")</code>.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="MBeanServerFactory.html#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Sonic Management API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="MBeanServerDelegateMBean.html" title="interface in javax.management"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="MBeanServerInvocationHandler.html" title="class in javax.management"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../index.html@javax%252Fmanagement%252FMBeanServerFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="MBeanServerFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="MBeanServerFactory.html#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="MBeanServerFactory.html#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
<font size="-1">Copyright &copy; 2001-2011
<a href="http://www.progress.com" target="_top"> Progress Software Corporation</a>. All Rights Reserved.
<br>HTML formatted on 12-Aug-2011.</font>
</BODY>
</HTML>