- java.lang.Object
-
- org.eclipse.persistence.platform.server.ServerPlatformBase
-
- org.eclipse.persistence.platform.server.JMXServerPlatformBase
-
- org.eclipse.persistence.platform.server.wls.WebLogicPlatform
-
- All Implemented Interfaces:
ServerPlatform
- Direct Known Subclasses:
WebLogic_9_Platform
public class WebLogicPlatform extends JMXServerPlatformBase
PUBLIC: This is the concrete subclass responsible for representing WebLogic-specific server behavior.This platform overrides:
- getExternalTransactionControllerClass(): to use the WebLogic-specific controller class
- getServerNameAndVersion(): to call the WebLogic library for this information
-
-
Field Summary
Fields Modifier and Type Field Description protected MethodclearStatementCacheMethodCached WLConnection.clearStatementCache() Method used for clearing statement cache.protected booleanshouldClearStatementCacheIndicates whether WLConnection.clearStatementCache() should be called: there is no need to call it in WebLogic Server 10.3.4 or later.protected MethodvendorConnectionMethodCached WLConnection.getVendorConnection() Method used for unwrapping connections.protected Class<?>weblogicConnectionClassCached WLS connection class used to reflectively check connections and unwrap them.-
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 WebLogicPlatform(DatabaseSession newDatabaseSession)INTERNAL: Default Constructor: All behavior for the default constructor is inherited.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearStatementCache(Connection connection)INTERNAL: Clears statement cache of WebLogic connection using the WebLogic API reflectively.protected MethodgetClearStatementCacheMethod()Return the method for the WebLogic connection clearStatementCache method.Class<? extends ExternalTransactionController>getExternalTransactionControllerClass()INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use for WebLogic.protected MethodgetVendorConnectionMethod()Return the method for the WebLogic JDBC connection wrapper vendorConnection.protected Class<?>getWebLogicConnectionClass()Return the class (interface) for the WebLogic JDBC connection wrapper.voidinitializeServerNameAndVersion()INTERNAL: Set the WLS version number through reflection.booleanisJTA11()INTERNAL: Check whether JTA 1.1 API is available.ConnectionunwrapConnection(Connection connection)Unwraps the WebLogic JDBC connection wrapping using the WebLogic API reflectively.-
Methods inherited from class org.eclipse.persistence.platform.server.JMXServerPlatformBase
getAbstractSession, getApplicationName, getApplicationName, getMBeanServer, getMBeanSessionName, getModuleName, getModuleName, getRuntimeServicesMBean, initializeApplicationNameAndModuleName, serverSpecificRegisterMBean, serverSpecificUnregisterMBean, setApplicationName, setModuleName, setRuntimeServicesMBean
-
Methods inherited from class org.eclipse.persistence.platform.server.ServerPlatformBase
configureProfiler, disableJTA, disableRuntimeServices, enableJTA, enableRuntimeServices, ensureNotLoggedIn, externalTransactionControllerNotNullWarning, getDatabaseSession, getJNDIConnectorLookupType, getNewTempClassLoader, getPartitionID, getServerLog, getServerNameAndVersion, getThreadPool, getThreadPoolSize, initializeExternalTransactionController, isCMP, isJTAEnabled, isRuntimeServicesEnabled, isRuntimeServicesEnabledDefault, launchContainerRunnable, registerMBean, setExternalTransactionControllerClass, setIsCMP, setJTAEnabled, setThreadPool, setThreadPoolSize, shouldUseDriverManager, shutdown, unregisterMBean, usesPartitions, wasFailureCommunicationBased
-
-
-
-
Field Detail
-
weblogicConnectionClass
protected Class<?> weblogicConnectionClass
Cached WLS connection class used to reflectively check connections and unwrap them.
-
vendorConnectionMethod
protected Method vendorConnectionMethod
Cached WLConnection.getVendorConnection() Method used for unwrapping connections.
-
clearStatementCacheMethod
protected Method clearStatementCacheMethod
Cached WLConnection.clearStatementCache() Method used for clearing statement cache.
-
shouldClearStatementCache
protected boolean shouldClearStatementCache
Indicates whether WLConnection.clearStatementCache() should be called: there is no need to call it in WebLogic Server 10.3.4 or later.
-
-
Constructor Detail
-
WebLogicPlatform
public WebLogicPlatform(DatabaseSession newDatabaseSession)
INTERNAL: Default Constructor: All behavior for the default constructor is inherited.
-
-
Method Detail
-
initializeServerNameAndVersion
public void initializeServerNameAndVersion()
INTERNAL: Set the WLS version number through reflection.- Overrides:
initializeServerNameAndVersionin classServerPlatformBase
-
getExternalTransactionControllerClass
public Class<? extends ExternalTransactionController> getExternalTransactionControllerClass()
INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use for WebLogic. This is read-only.- Specified by:
getExternalTransactionControllerClassin interfaceServerPlatform- Specified by:
getExternalTransactionControllerClassin classServerPlatformBase- Returns:
- Class externalTransactionControllerClass
- See Also:
JTATransactionController,ServerPlatformBase.isJTAEnabled(),ServerPlatformBase.disableJTA(),ServerPlatformBase.initializeExternalTransactionController()
-
getWebLogicConnectionClass
protected Class<?> getWebLogicConnectionClass()
Return the class (interface) for the WebLogic JDBC connection wrapper.
-
getVendorConnectionMethod
protected Method getVendorConnectionMethod()
Return the method for the WebLogic JDBC connection wrapper vendorConnection.
-
unwrapConnection
public Connection unwrapConnection(Connection connection)
Unwraps the WebLogic JDBC connection wrapping using the WebLogic API reflectively.- Specified by:
unwrapConnectionin interfaceServerPlatform- Overrides:
unwrapConnectionin classServerPlatformBase
-
getClearStatementCacheMethod
protected Method getClearStatementCacheMethod()
Return the method for the WebLogic connection clearStatementCache method.
-
clearStatementCache
public void clearStatementCache(Connection connection)
INTERNAL: Clears statement cache of WebLogic connection using the WebLogic API reflectively. Required by Oracle proxy authentication: currently connection statement cache becomes invalid on switching to/from proxy session. This method is called by OracleJDBC_10_1_0_2ProxyConnectionCustomizer before opening proxy session and before closing it.- Specified by:
clearStatementCachein interfaceServerPlatform- Overrides:
clearStatementCachein classServerPlatformBase
-
isJTA11
public boolean isJTA11()
INTERNAL: Check whether JTA 1.1 API is available. WLS older than 10.0 is not JTA 1.1 compliant.- Overrides:
isJTA11in classServerPlatformBase- Returns:
- always returns
falsefor WLS older than 10.0.
-
-