Class WebLogic_10_Platform
- java.lang.Object
-
- org.eclipse.persistence.platform.server.ServerPlatformBase
-
- org.eclipse.persistence.platform.server.JMXServerPlatformBase
-
- org.eclipse.persistence.platform.server.wls.WebLogicPlatform
-
- org.eclipse.persistence.platform.server.wls.WebLogic_9_Platform
-
- org.eclipse.persistence.platform.server.wls.WebLogic_10_Platform
-
- All Implemented Interfaces:
JMXEnabledPlatform
,ServerPlatform
- Direct Known Subclasses:
WebLogic_12_Platform
public class WebLogic_10_Platform extends WebLogic_9_Platform implements JMXEnabledPlatform
PUBLIC: This is the concrete subclass responsible for representing WebLogic 10 specific behavior. This includes WebLogic 10.3 behavior.
-
-
Field Summary
Fields Modifier and Type Field Description protected static String
SERVER_SPECIFIC_APPLICATIONNAME_PROPERTY
This persistence.xml or sessions.xml property is used to override the applicationNameprotected static String
SERVER_SPECIFIC_MODULENAME_PROPERTY
This persistence.xml or sessions.xml property is used to override the moduleName-
Fields inherited from class org.eclipse.persistence.platform.server.wls.WebLogicPlatform
clearStatementCacheMethod, shouldClearStatementCache, vendorConnectionMethod, weblogicConnectionClass
-
Fields inherited from class org.eclipse.persistence.platform.server.JMXServerPlatformBase
APP_SERVER_CLASSLOADER_APPLICATION_PU_SEARCH_STRING_POSTFIX, APP_SERVER_CLASSLOADER_APPLICATION_PU_SEARCH_STRING_PREFIX, APP_SERVER_CLASSLOADER_MODULE_EJB_SEARCH_STRING_PREFIX, APP_SERVER_CLASSLOADER_MODULE_EJB_WAR_SEARCH_STRING_POSTFIX, APP_SERVER_CLASSLOADER_MODULE_WAR_SEARCH_STRING_PREFIX, JMX_MBEANSERVER_INDEX_DEFAULT_FOR_MULTIPLE_SERVERS, JMX_REGISTRATION_PREFIX, mBeanServer, OVERRIDE_JMX_APPLICATIONNAME_PROPERTY, OVERRIDE_JMX_MODULENAME_PROPERTY
-
Fields inherited from class org.eclipse.persistence.platform.server.ServerPlatformBase
DEFAULT_SERVER_NAME_AND_VERSION, externalTransactionControllerClass, JMX_REGISTER_DEV_MBEAN_PROPERTY, JMX_REGISTER_RUN_MBEAN_PROPERTY, serverNameAndVersion, shouldRegisterDevelopmentBean, shouldRegisterRuntimeBean, threadPool, threadPoolSize
-
-
Constructor Summary
Constructors Constructor Description WebLogic_10_Platform(DatabaseSession newDatabaseSession)
INTERNAL: Default Constructor: All behavior for the default constructor is inherited
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description Class
getExternalTransactionControllerClass()
INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use for WebLogic.MBeanServer
getMBeanServer()
INTERNAL: Return the MBeanServer to be used for MBean registration and deregistration.
This MBeanServer reference is lazy loaded and cached on the platform.
There are multiple ways of getting the MBeanServerprotected Method
getVendorConnectionMethod()
Return the method for the WebLogic JDBC connection wrapper vendorConnection.protected void
initializeApplicationNameAndModuleName()
Deprecated.boolean
isJTA11()
INTERNAL: Check whether JTA 1.1 API is available.boolean
isRuntimeServicesEnabledDefault()
INTERNAL: isRuntimeServicesEnabledDefault(): Answer true if the JMX/MBean providing runtime services for the receiver's DatabaseSession will be deployed at runtime.void
prepareServerSpecificServicesMBean()
INTERNAL: prepareServerSpecificServicesMBean(): Server specific implementation of the creation and deployment of the JMX MBean to provide runtime services for the databaseSession.void
serverSpecificRegisterMBean()
INTERNAL: serverSpecificRegisterMBean(): Server specific implementation of the creation and deployment of the JMX MBean to provide runtime services for my databaseSession.-
Methods inherited from class org.eclipse.persistence.platform.server.wls.WebLogicPlatform
clearStatementCache, getClearStatementCacheMethod, getWebLogicConnectionClass, initializeServerNameAndVersion, unwrapConnection
-
Methods inherited from class org.eclipse.persistence.platform.server.JMXServerPlatformBase
getAbstractSession, getApplicationName, getApplicationName, getMBeanSessionName, getModuleName, getModuleName, getRuntimeServicesMBean, serverSpecificUnregisterMBean, setApplicationName, setModuleName, setRuntimeServicesMBean
-
Methods inherited from class org.eclipse.persistence.platform.server.ServerPlatformBase
configureProfiler, disableJTA, disableRuntimeServices, enableRuntimeServices, ensureNotLoggedIn, externalTransactionControllerNotNullWarning, getDatabaseSession, getJNDIConnectorLookupType, getNewTempClassLoader, getPartitionID, getServerLog, getServerNameAndVersion, getThreadPool, getThreadPoolSize, initializeExternalTransactionController, isCMP, isJTAEnabled, isRuntimeServicesEnabled, launchContainerRunnable, registerMBean, setExternalTransactionControllerClass, setIsCMP, setThreadPool, setThreadPoolSize, shouldUseDriverManager, shutdown, unregisterMBean, usesPartitions, wasFailureCommunicationBased
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.persistence.platform.server.JMXEnabledPlatform
getApplicationName
-
-
-
-
Field Detail
-
SERVER_SPECIFIC_MODULENAME_PROPERTY
protected static final String SERVER_SPECIFIC_MODULENAME_PROPERTY
This persistence.xml or sessions.xml property is used to override the moduleName- See Also:
- Constant Field Values
-
SERVER_SPECIFIC_APPLICATIONNAME_PROPERTY
protected static final String SERVER_SPECIFIC_APPLICATIONNAME_PROPERTY
This persistence.xml or sessions.xml property is used to override the applicationName- See Also:
- Constant Field Values
-
-
Constructor Detail
-
WebLogic_10_Platform
public WebLogic_10_Platform(DatabaseSession newDatabaseSession)
INTERNAL: Default Constructor: All behavior for the default constructor is inherited
-
-
Method Detail
-
isRuntimeServicesEnabledDefault
public boolean isRuntimeServicesEnabledDefault()
Description copied from class:ServerPlatformBase
INTERNAL: isRuntimeServicesEnabledDefault(): Answer true if the JMX/MBean providing runtime services for the receiver's DatabaseSession will be deployed at runtime. Provide the default value forServerPlatformBase.isRuntimeServicesEnabled()
for a ServerPlatform. By default this isfalse
but some platforms can choose to have MBeans deployed by default.- Specified by:
isRuntimeServicesEnabledDefault
in interfaceServerPlatform
- Overrides:
isRuntimeServicesEnabledDefault
in classServerPlatformBase
-
prepareServerSpecificServicesMBean
public void prepareServerSpecificServicesMBean()
INTERNAL: prepareServerSpecificServicesMBean(): Server specific implementation of the creation and deployment of the JMX MBean to provide runtime services for the databaseSession. Default is to do nothing. Implementing platform classes must override this function and supply the server specific MBean instance for later registration by calling it in the constructor.
-
serverSpecificRegisterMBean
public void serverSpecificRegisterMBean()
INTERNAL: serverSpecificRegisterMBean(): Server specific implementation of the creation and deployment of the JMX MBean to provide runtime services for my databaseSession.
-
getMBeanServer
public MBeanServer getMBeanServer()
INTERNAL: Return the MBeanServer to be used for MBean registration and deregistration.
This MBeanServer reference is lazy loaded and cached on the platform.
There are multiple ways of getting the MBeanServer
1) MBeanServerFactory static function - working for 3 of 4 servers WebSphere, JBoss and Glassfish in a generic way
We are using method (3)
- JBoss returns 2 MBeanServers in the List - but one of them has a null domain - we don't use that one
- WebLogic may return 2 MBeanServers - in that case we want to register with the one containing the "com.bea" tree 2) ManagementFactory static function - what is the difference in using this one over the one returning a List of servers
3) JNDI lookup
4) Direct server specific native API- Overrides:
getMBeanServer
in classJMXServerPlatformBase
- Returns:
- the JMX specification MBeanServer
-
initializeApplicationNameAndModuleName
@Deprecated protected void initializeApplicationNameAndModuleName()
Deprecated.INTERNAL: Get the applicationName and moduleName from the runtime WebLogic MBean reflectively- Overrides:
initializeApplicationNameAndModuleName
in classJMXServerPlatformBase
-
getVendorConnectionMethod
protected Method getVendorConnectionMethod()
Return the method for the WebLogic JDBC connection wrapper vendorConnection. WLS 10.3.4.0 added a getVendorConnectionSafe that does not invalidate the connection, so use this if available.- Overrides:
getVendorConnectionMethod
in classWebLogicPlatform
-
isJTA11
public boolean isJTA11()
INTERNAL: Check whether JTA 1.1 API is available. WLS 10.0 and later is JTA 1.1 compliant.- Overrides:
isJTA11
in classWebLogicPlatform
- Returns:
- always returns
true
for WLS 10.0 and later.
-
getExternalTransactionControllerClass
public Class getExternalTransactionControllerClass()
INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use for WebLogic. This is read-only.- Specified by:
getExternalTransactionControllerClass
in interfaceServerPlatform
- Overrides:
getExternalTransactionControllerClass
in classWebLogicPlatform
- Returns:
- Class externalTransactionControllerClass
- See Also:
JTA11TransactionController
,ServerPlatformBase.isJTAEnabled()
,ServerPlatformBase.disableJTA()
,ServerPlatformBase.initializeExternalTransactionController()
-
-