BEA Systems, Inc.

WebLogic Server 6.1 API Reference

weblogic.management.configuration
Interface ClusterMBean


public interface ClusterMBean
extends TargetMBean

This bean represents a cluster in the domain. Servers join a cluster by calling ServerMBean.setCluster with the logical name of the cluster. A configuration may define zero or more clusters. They may be looked up by logical name. The name of a cluster denotes its logical cluster name.

Author:
Copyright © 2001 BEA Systems, Inc. All Rights Reserved.

Method Summary
 java.lang.String getClusterAddress()
          Returns the address to be used by clients to connect to this cluster.
 java.lang.String getDefaultLoadAlgorithm()
          Returns the algorithm to be used for load-balancing between replicated services if none is specified for a particular service.
 int getIdlePeriodsUntilTimeout()
          Maximum number of periods that a cluster member will wait before timing out a member of a cluster.
 java.lang.String getMulticastAddress()
          The multicast address used by cluster members to communicate with each other.
 int getMulticastSendDelay()
          Returns the number of milliseconds to delay sending message fragments over multicast in order to avoid OS-level buffer overflow.
 int getMulticastTTL()
          Returns the number of network hops that a cluster multicast message is allowed to travel.
 ServerMBean[] getServers()
          The servers which have declared membership in this cluster.
 boolean isClientCertProxyEnabled()
           
 boolean isHttpTraceSupportEnabled()
           
 boolean isServletExtensionCaseSensitive()
           
 boolean isWeblogicPluginEnabled()
           
 java.util.Map kill()
           
 void setClientCertProxyEnabled(boolean ccp)
          HttpClusterServlet will proxy the client certificate in a special header.
 void setClusterAddress(java.lang.String address)
          Sets the cluster's address.
 void setDefaultLoadAlgorithm(java.lang.String value)
          Sets the default load balancing algorithm.
 void setHttpTraceSupportEnabled(boolean tse)
          Attackers may abuse HTTP TRACE functionality to gain access to information in HTTP headers such as cookies and authentication data.
 void setIdlePeriodsUntilTimeout(int timeout)
          Set the maximum number of periods that a cluster member will wait before timing out a member of a cluster.
 void setMulticastAddress(java.lang.String address)
          Sets the multicast address used by cluster members to communicate with each other.
 void setMulticastSendDelay(int delay)
          Sets the number of milliseconds to delay sending message fragments over multicast.
 void setMulticastTTL(int ttl)
          Sets the time-to-live value for the cluster's multicast address.
 void setServletExtensionCaseSensitive(boolean enable)
          Specifies whether file lookups for Java Server Pages (JSPs) are case sensitive on all platforms except win32; file lookups from standard win32 file systems are always case-insensitive.
 void setWeblogicPluginEnabled(boolean wpe)
          WLS HttpRequest.getRemoteAddr() used to rely on X-Forwarded-For for its returned value.
 java.lang.String[] start()
           
 
Methods inherited from interface weblogic.management.configuration.TargetMBean
setDeployments
 
Methods inherited from interface weblogic.management.configuration.ConfigurationMBean
getNotes, setNotes, setPersistenceEnabled
 
Methods inherited from interface weblogic.management.WebLogicMBean
getMBeanInfo, getName, getObjectName, getParent, getType, isCachingDisabled, isRegistered, setName, setParent
 
Methods inherited from interface javax.management.DynamicMBean
getAttribute, getAttributes, invoke, setAttribute, setAttributes
 
Methods inherited from interface javax.management.MBeanRegistration
postDeregister, postRegister, preDeregister, preRegister
 
Methods inherited from interface javax.management.NotificationBroadcaster
addNotificationListener, getNotificationInfo, removeNotificationListener
 

Method Detail

getServers

public ServerMBean[] getServers()
The servers which have declared membership in this cluster.


getClusterAddress

public java.lang.String getClusterAddress()
Returns the address to be used by clients to connect to this cluster. This address may be either a DNS host name that maps to multiple IP addresses or a comma separated list of single address host names or IP addresses.

A configurable MBean attribute

setClusterAddress

public void setClusterAddress(java.lang.String address)
                       throws javax.management.InvalidAttributeValueException
Sets the cluster's address.

Throws:
java.lang.IllegalArgumentException - if the address is not either a well-formed IP address or hostname.

getMulticastAddress

public java.lang.String getMulticastAddress()
The multicast address used by cluster members to communicate with each other.

A configurable MBean attribute
Default Value: "237.0.0.1"
Old Property: weblogic.cluster.multicastAddress

setMulticastAddress

public void setMulticastAddress(java.lang.String address)
                         throws javax.management.InvalidAttributeValueException
Sets the multicast address used by cluster members to communicate with each other.

Legal Value: (value != null) && (value.trim().length() > 0)
Throws:
java.lang.IllegalArgumentException - if the argument is not a well-formed IP address.

getMulticastTTL

public int getMulticastTTL()
Returns the number of network hops that a cluster multicast message is allowed to travel. 1 restricts the cluster to one subnet. The minimum value is 1 and the maximum value is 255, inclusive.

A configurable MBean attribute
Default Value: 1
Old Property: weblogic.cluster.multicastTTL
Legal Minimum Value: 1
Legal Maximum Value: 255

setMulticastTTL

public void setMulticastTTL(int ttl)
                     throws javax.management.InvalidAttributeValueException
Sets the time-to-live value for the cluster's multicast address.

Legal Minimum Value: 1
Legal Maximum Value: 255

getMulticastSendDelay

public int getMulticastSendDelay()
Returns the number of milliseconds to delay sending message fragments over multicast in order to avoid OS-level buffer overflow. The default should be fine in most cases, but it may need to be tuned for odd configurations.

A configurable MBean attribute
Default Value: 12
Legal Minimum Value: 0
Legal Maximum Value: 100

setMulticastSendDelay

public void setMulticastSendDelay(int delay)
                           throws javax.management.InvalidAttributeValueException
Sets the number of milliseconds to delay sending message fragments over multicast.

Legal Minimum Value: 0
Legal Maximum Value: 100

getDefaultLoadAlgorithm

public java.lang.String getDefaultLoadAlgorithm()
Returns the algorithm to be used for load-balancing between replicated services if none is specified for a particular service.

A configurable MBean attribute
Default Value: "round-robin"
Old Property: weblogic.cluster.defaultLoadAlgorithm
Legal Values: "round-robin","weight-based","random"

setDefaultLoadAlgorithm

public void setDefaultLoadAlgorithm(java.lang.String value)
                             throws javax.management.InvalidAttributeValueException
Sets the default load balancing algorithm.

Throws:
java.lang.IllegalArgumentException - if the value is not a valid algorithm. DESIGN ISSUE: what are the valid values? Is this settable dynamically.

start

public java.lang.String[] start()


kill

public java.util.Map kill()


setClientCertProxyEnabled

public void setClientCertProxyEnabled(boolean ccp)
HttpClusterServlet will proxy the client certificate in a special header. This is a security hole if left open, as that header could be spoofed fairly easily with any certificate. The ServletRequest has that functionality turned off by default now. This will turn it back on. It's strongly suggested that it's used only in conjunction with ConnectionFilters to make certain the WebLogic proxy machine is the only one connecting.

Default Value: false

isClientCertProxyEnabled

public boolean isClientCertProxyEnabled()


setWeblogicPluginEnabled

public void setWeblogicPluginEnabled(boolean wpe)
WLS HttpRequest.getRemoteAddr() used to rely on X-Forwarded-For for its returned value. This is a security hole due to HTTP header can be easily mocked and we end up with returning wrong value. This is improved by introducing a proprietary header WL-Proxy-Client-IP from our plugins and this header will only be used if WLS is configured to use our plugins. This is duplicated both in ClusterMBean and ServerMBean so the attribute WeblogicPluginEnabled can be used cluster-wide. ClusterMBean overrides ServerMBean

Default Value: false

isWeblogicPluginEnabled

public boolean isWeblogicPluginEnabled()


getIdlePeriodsUntilTimeout

public int getIdlePeriodsUntilTimeout()
Maximum number of periods that a cluster member will wait before timing out a member of a cluster.

Default Value: 3
Returns:
The idlePeriodsUntilTimeout

setIdlePeriodsUntilTimeout

public void setIdlePeriodsUntilTimeout(int timeout)
Set the maximum number of periods that a cluster member will wait before timing out a member of a cluster.

Legal Minimum Value: 3

setHttpTraceSupportEnabled

public void setHttpTraceSupportEnabled(boolean tse)
Attackers may abuse HTTP TRACE functionality to gain access to information in HTTP headers such as cookies and authentication data. In the presence of other cross-domain vulnerabilities in web browsers, sensitive header information could be read from any domains that support the HTTP TRACE method. This attribute is for disabling HTTP TRACE support. It is duplicated both in ClusterMBean and ServerMBean so the attribute HttpTraceSupportEnabled can be used cluster-wide. ClusterMBean overrides ServerMBean

Default Value: false

isHttpTraceSupportEnabled

public boolean isHttpTraceSupportEnabled()


setServletExtensionCaseSensitive

public void setServletExtensionCaseSensitive(boolean enable)
Specifies whether file lookups for Java Server Pages (JSPs) are case sensitive on all platforms except win32; file lookups from standard win32 file systems are always case-insensitive. On case-insensitive file systems other than win32 (such as NT Samba mounts from UNIX or Mac OS that has been installed in case-insensitive mode), specify case insensitive lookups (set this attribute to false) to prevent the JSP from returning its source code. For example, if a JSP is being served from a Samba mount and you have specified case insensitive lookups, WebLogic Server converts all file name extensions in a request to lower case before looking up the JSP. For example, foo.jsP is converted to foo.jsp. If you do not specify case insensitive lookups for this same JSP, requests that include a mixed-case file extension cause the mapped servlet to return the JSP source code. This setting on the ClusterMBean overrides the setting on the ServerMBean for the servers that belong to the cluster.

Default Value: true

isServletExtensionCaseSensitive

public boolean isServletExtensionCaseSensitive()


Documentation is available at
http://download.oracle.com/docs/cd/E13222_01/wls/docs61

WebLogic classes and methods that do not appear in this reference are not public and are not supported.