Delete DLQs messages in weblogic JMS
step 1) create property file with following : ( I created file with name : dev.properties )
########################### Domain Properties #########################################
domain.adminHost=localhost
domain.adminPort=7001
domain.userConfig=/home/oracle/admin_config.secure
domain.key=/home/oracle/posia_admin_key.secure
domain.soaPort=8001
########################### JMS Servers and Destination list ####################
wlsServer.list=wls_soa11,wls_soa12,wls_soa21,wls_soa22
soaServer.list=wls_soa11-1,wls_soa12-2,wls_soa21-3,wls_soa22-4
jmsServer.list=wls_soa11.JMSServer_auto_1,wls_soa12.JMSServer_auto_2,wls_soa21.JMSServer_auto_3,wls_soa22.JMSServer_auto_4
DLQs_Destinations.list=dist_jms1_dlq_queue_auto,dist_jms2_dlq_queue_auto,dist_jms3_dlq_queue_auto,dist_jms4_dlq_queue_auto,dist_jms5_dlq_queue_auto,dist_jms6_dlq_queue_auto,dist_jms7_dlq_queue_auto,dist_jms8_dlq_queue_auto,dist_jms9_dlq_queue_auto,dist_jms10_dlq_queue_auto
step 2) create a wlst script . script Name : deleteDLQMessages.py
from java.io import FileInputStream
from java.lang import *
from java.util import Date
from java.util import HashMap
from java.lang import Runtime
from java.util import Arrays
from java.lang import System
env=sys.argv[1]
ENVIRONMENT_NAME = env.upper()
propInputStream = FileInputStream(env + ".properties")
configProps = Properties()
configProps.load(propInputStream)
portNo=configProps.get("domain.soaPort")
wlsServerList = configProps.get("soaServer.list")
jmsServerList = configProps.get("jmsServer.list")
destinationList = configProps.get("destination.list")
userConfigFileName = configProps.get("domain.userConfig")
userKeyFileName = configProps.get("domain.key")
listofJMSDestinations = destinationList.split(',')
listofWLSServers = wlsServerList.split(',')
listofJMSServers = jmsServerList.split(',')
for m_server in listofWLSServers:
for jmsDestName in listofJMSDestinations:
m_soa_server = m_server.split('-')[0]
m_soa_server_n = m_server.split('-')[1]
soa_server = m_soa_server.split('_')[1]
hostURL="SOA_SERVER_HOST_NAME" + portNo
connect(userConfigFile=userConfigFileName, userKeyFile=userKeyFileName , url=hostURL)
print jmsDestName
print 'JMSServer_auto_'+m_soa_server_n;
cmo.deleteMessages('');
3) run the script : ( here deleteDLQMessages.py is the wlst script and dev is the file name created in step 1)
$ORACLE_COMMON/common/bin/wlst.sh deleteDLQMessages.py dev
step 1) create property file with following : ( I created file with name : dev.properties )
########################### Domain Properties #########################################
domain.adminHost=localhost
domain.adminPort=7001
domain.userConfig=/home/oracle/admin_config.secure
domain.key=/home/oracle/posia_admin_key.secure
domain.soaPort=8001
########################### JMS Servers and Destination list ####################
wlsServer.list=wls_soa11,wls_soa12,wls_soa21,wls_soa22
soaServer.list=wls_soa11-1,wls_soa12-2,wls_soa21-3,wls_soa22-4
jmsServer.list=wls_soa11.JMSServer_auto_1,wls_soa12.JMSServer_auto_2,wls_soa21.JMSServer_auto_3,wls_soa22.JMSServer_auto_4
DLQs_Destinations.list=dist_jms1_dlq_queue_auto,dist_jms2_dlq_queue_auto,dist_jms3_dlq_queue_auto,dist_jms4_dlq_queue_auto,dist_jms5_dlq_queue_auto,dist_jms6_dlq_queue_auto,dist_jms7_dlq_queue_auto,dist_jms8_dlq_queue_auto,dist_jms9_dlq_queue_auto,dist_jms10_dlq_queue_auto
step 2) create a wlst script . script Name : deleteDLQMessages.py
from java.io import FileInputStream
from java.lang import *
from java.util import Date
from java.util import HashMap
from java.lang import Runtime
from java.util import Arrays
from java.lang import System
env=sys.argv[1]
ENVIRONMENT_NAME = env.upper()
propInputStream = FileInputStream(env + ".properties")
configProps = Properties()
configProps.load(propInputStream)
portNo=configProps.get("domain.soaPort")
wlsServerList = configProps.get("soaServer.list")
jmsServerList = configProps.get("jmsServer.list")
destinationList = configProps.get("destination.list")
userConfigFileName = configProps.get("domain.userConfig")
userKeyFileName = configProps.get("domain.key")
listofJMSDestinations = destinationList.split(',')
listofWLSServers = wlsServerList.split(',')
listofJMSServers = jmsServerList.split(',')
for m_server in listofWLSServers:
for jmsDestName in listofJMSDestinations:
m_soa_server = m_server.split('-')[0]
m_soa_server_n = m_server.split('-')[1]
soa_server = m_soa_server.split('_')[1]
hostURL="SOA_SERVER_HOST_NAME" + portNo
connect(userConfigFile=userConfigFileName, userKeyFile=userKeyFileName , url=hostURL)
print jmsDestName
print 'JMSServer_auto_'+m_soa_server_n;
cmo.deleteMessages('');
3) run the script : ( here deleteDLQMessages.py is the wlst script and dev is the file name created in step 1)
$ORACLE_COMMON/common/bin/wlst.sh deleteDLQMessages.py dev