WLST change script to SOA Common, BPEL an BPMN Properties

To all you WebLogic / SOA Suite Admins: getting tired and bored to postconfiguration actions of SOA Suite specific settings after the 5th  SOA /BPM Somain you’ve created? I did :). Doing manual repetitive tasks can be boring, but also time consuming and sensible for error.

I had to tune  some performance related items in the SOA /BPM  stack, called Dispatcher Thread Settings. These threads are used for process flows, and the more threads you define the more threads can be handled simultaneously. An example of which properties I mean can be seen in the picture below, set in the Fusion Middleware Control, under soa-infra–> SOA Administration. There you can find the common, BPEL and BPMN properties to set, all representing an accessible mbean.

The set of scripts contain 3 components. The scripts are  based on the ones I found at Togotutor Blog

  • substitute.py -> Used for parsing and substitute the current vallues with the one of the property file
  • soaCommProp.py –> The actual executable python script
  • properties –> the property file loaded with the substitute.py

To run the script and change the settings, first run the setDomainEnv.sh to set some parameters, or use a wlst shell script from the oracle_common/common/bin directory.

Then run:

java weblogic.WLST soaCommProp.py

I’ve added a python color class to highlight the changes that have been made.

Here a snippet of the code:

def __changeBPELProperties(properties):
soaconfigmbean=getKeyValue('SOA_CONFIG', properties)
locationinfo=getKeyValue('MANAGED_SERVER_INFO', properties)
appname=getKeyValue('APP_NAME', properties)
bpelname=getKeyValue('bpname', properties)
DEPT=getKeyValue('BPDEP', properties)
DISTS=getKeyValue('BPDIST', properties)
DEPTV=getKeyValue('BPDEP_VALUE', properties)
DIVTSV=getKeyValue('BPDIVTS_VALUE', properties)
DISTSV=getKeyValue('BPDIST_VALUE', properties)

BPELMBeanobj = ObjectName(soaconfigmbean+':Location='+locationinfo+',name='+bpelname+',type=BPELConfig,Application='+appname)
mbs.setAttribute(BPELMBeanobj, Attribute(DEPT,int(DEPTV)))
mbs.setAttribute(BPELMBeanobj, Attribute(DIVTS,int(DIVTSV)))
mbs.setAttribute(BPELMBeanobj, Attribute(DISTS,int(DISTSV)))

print bcolors.OKGREEN + 'New' + ' ' + bpelname + ' ' + 'settings:' + bcolors.ENDC
print 'Current' + DEPT +' ' +'Value is set to ----> ', mbs.getAttribute(BPELMBeanobj,DEPT)
print 'Current' + DIVTS +' ' +'Value is set to ----> ', mbs.getAttribute(BPELMBeanobj,DIVTS)
print 'Current' + DISTS +' ' +'Value is set to ----> ', mbs.getAttribute(BPELMBeanobj,DISTS)

Hope this will help you forward in your work.  It sure helped me!

Special thanks to  Togotutor Blog

All the best for 2013!


Started in pharmacy, Michel made the change to IT in 1996, on a UNIX TTY terminal based computer and the MUMPS language. These days he is an Oracle Fusion Middleware Architect at Qualogy, as member of the Exalogic Squad team, with focus on technical infrastructure, Serverside solutions, installing, administering, configuring the Oracle Fusion Middleware stack. He started in 2000 as a support analyst for a big bank with BEA Tuxedo 6.5 and WebLogic 6. His experience is from integrations at telco´s. He now works mainly with Oracle WebLogic 11g and 12c, plus releases with practically all Oracle products running on top of it. In 2012 he became an Oracle ACE and wrote 2 books about WebLogic: http://www.packtpub.com/oracle-weblogic-server-11gr2-administration-essentials/book http://www.packtpub.com/oracle-weblogic-server-12c-first-look/book. This blog is also being published at: http://weblogiccommunity.com/blogs thanks to Jürgen Kress

2 Reacties op WLST change script to SOA Common, BPEL an BPMN Properties

  1. Amar schreef:

    Nice Article.Very well explained. Thanks for posting this. But I could not find the said script on reference site. Will you please add those scripts for download?

  2. Kumar schreef:

    Hi … Can you please send me the files to my email id

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *


Hebt u vragen of suggesties?

Mail info@qualogy.com!

De Bruyn Kopsstraat 9

2288EC Rijswijk (ZH)

The Netherlands

+31.(0)70 319 5000

  • Blog

  • Tags

  • @qualogy_news

  • @qresources

  • Reacties

  • Blijf in contact

    +31.(0)70 319 5000