/** * Do cleanup of system-resource-adapter, resources, pools */ public void preDestroy() { if (isConnectorRuntimeInitialized()) { Collection<Resource> resources = ConnectorsUtil.getAllSystemRAResourcesAndPools(domain.getResources()); undeployResources(resources); ConnectorRuntime cr = getConnectorRuntime(); if (cr != null) { // clean up will take care of any system RA resources, pools // (including pools via datasource-definition) cr.cleanUpResourcesAndShutdownAllActiveRAs(); } } else { if(logger.isLoggable(Level.FINEST)) { logger.finest("ConnectorRuntime not initialized, hence skipping " + "resource-adapters shutdown, resources, pools cleanup"); } } removeListenerForAllResources(); removeListenerForResources(); removeListenerForResourceRefs(); removeListenerForServer(); }