The workclassoperations.py script can be used to manage work classes.
The workclassoperations.py script creates, updates work classes for enterprise applications and generic server clusters. It also lists rules in a work class, list members in a work class, fetch default action, set default action, add rule, delete rule, delete members, and delete work classes for the various policies and communication protocols.
From a command line:
For general help: >> ./wsadmin.sh -lang jython -f workclassoperations.py
For operation specific help, >> ./wsadmin.sh -lang jython -f workclassoperations.py --help
The following is the usage of the script:
Usage: wsadmin [-lang jython] [-f workclassoperations.py] [-odrname odrName] [-odrnode odrNode] [-wcname workClassName] [-appname appName] [-webmodule webModule] [-adduri ["uri1?uri2?..."]] -addmember [-type HTTP|SOAP|IIOP|JMS] [-vhost virtualHost] [-wctype APP|GSC|ARP|ASP|GRP|GSP] [-addrule ["priority?expr?actiontype?action"]] [-deleterule [priority]] [-deleteuri ["uri1?uri2?..."]] [-deletemember] [-deletewc] [-listrule] [-listuri] [-listmember] [-setdefaultaction ["actiontype?action"]] [-modifydefaultaction ["actiontype?action"]] [-getdefaultaction] [-systemapp] [-both]
For operation-specific help type:
wsadmin -lang jython -f workclassoperations.py <operation> -help
where:
Common options:
Depending on where you are issuing the command, you might have to specify the path to workclassoperation.py. For example, if you have created a profile named Dmgr01 located here:c:\<WAS_INSTALL_ROOT>\profiles\Dmgr01\bin . From within that directory, type:
wsadmin -lang jython -f ..\..\..\bin\workclassoperations.py
Note that if the deployment manager is not started, you must include the additional parameter -conntype NONE. For example,
wsadmin -lang jython -conntype NONE workclassoperations.py
Lists all work classes by the type specified. The format of listing is:
workclassname type appname/odrname deploymentname
Options:
list all work classes:
>> ./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses
List all work classes for application Trade:
>> ./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses --appname Trade
List all routing policy work classes for application Trade:
>> ./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses --type ARP --appname Trade
List all generic server work classes for ODR myODR:
>> ./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses --odrname myODR
List all generic server routing policy work classes for ODR myODR:
>> ./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses --type GRP --odrname myODR
wsadmin -lang jython -f workclassoperations.py -appname my_App -wcname my_Work_Class -type HTTP -wctype APP -webmodule my_Web_Module -adduri -addmember "/test1?/test2/*" -addrule "1?clienthost LIKE \'\%%.ibm.com\'?permit?my_App" -setdefaultaction "reject?404"
wsadmin -lang jython -f workclassoperations.py -appname A -wcname CustomWorkClass -type HTTP -wctype APP -webmodule myWebModule -adduri -addmember "/test1?/test2/*" -addrule "1?clienthost=\'localhost\' and serverhost like \'\%%.ibm.com\'?permit" -setdefaultaction "reject?404"
wsadmin -lang jython -f workclassoperations.py -appname A -wcname Custom2WorkClass -type HTTP -wctype APP -webmodule myWebModule -setdefaultaction "Default_TC" -adduri -addmember "/test1?/test2/*" -addrule "1?clienthost=\'localhost\' and serverhost like \'\%%.ibm.com\'?Default_TC"
wsadmin -lang jython -f workclassoperations.py -odrname ODR -odrnode myNode01 -wcname GSCWorkClass -vhost default_host -wctype GSC -setdefaultaction "permit?myGSC" -adduri -addmember "/test1/*"
wsadmin -lang jython -f workclassoperations.py -odrname ODR -odrnode myNode01 -wcname GSCWorkClass -vhost default_host -wctype GSC -addrule "1?serverhost=\'localhost\' and serverhost like \'\%%.ibm.com\'?TransactionClassA" -setdefaultaction "TransactionClassB"
wsadmin -lang jython -f workclassoperations.py -deleterule 1 -wcname CustomWorkClass -appname A -wctype ARP"
wsadmin -lang jython -f workclassoperations.py -listrule -wcname CustomWorkClass -both -appname A -wctype APP"
wsadmin -lang jython -f workclassoperations.py -listrule -wcname CustomWorkClass -both -odrname ODR -odrnode theTestNode01 -wctype GSC"
wsadmin -lang jython -f workclassoperations.py -getdefaultaction -wcname CustomWorkClass -both -appname A -wctype APP"
wsadmin -lang jython -f workclassoperations.py -deletewc -wcname CustomWorkClass -appname A -wctype ARP"
wsadmin -lang jython -f workclassoperations.py -deletewc -wcname CustomWorkClass -appname A -wctype ASP"
wsadmin -lang jython -f workclassoperations.py -deletewc -wcname CustomWorkClass -odrname myODR -wctype GSP"
wsadmin -lang jython -f workclassoperations.py -deletewc -wcname CustomWorkClass -odrname myODR -wctype GRP"
wsadmin -lang jython -f workclassoperations.py -listuri -listmember -wcname CustomWorkClass -appname A -webmodule microwebapp"
wsadmin -lang jython -f workclassoperations.py -deleteuri -deletemember "/myURI/help.jsp" -wcname CustomWorkClass -appname A -webmodule microwebapp"
wsadmin -lang jython -f workclassoperations.py -appname A -webmodule microwebapp -wcname Custom2WorkClass -wctype APP -type HTTP -adduri -addmember "/test1?/test2/*" -setdefaultaction "redirect?http://www.ibm.com" -addrule "1?clienthost=\'localhost\' and serverhost like \'\%%.ibm.com\'?permit?A" -addrule "2?protocol IN (\'HTTP\',\'HTTPS\')?permitsticky?A"
wsadmin -lang jython -f workclassoperations.py -adduri -addmember "/myURI/help.jsp" -wcname CustomWorkClass -appname A -webmodule microwebapp -wctype ARP"
wsadmin -lang jython -f workclassoperations.py -appname A -wcname CustomWorkClass -type SOAP -wctype APP -webmodule myWebModule -adduri -addmember "RemoteTest:addJob?RemoteTest:removeJob" -addrule "1?clienthost=\'localhost\' and serverhost like \'\%%.ibm.com\'?permit" -setdefaultaction "reject?404"
For example: -addmember Demo_001:method_001?Demo_002:method_002
wsadmin -lang jython -f workclassoperations.py -appname MyEjbApplication -wcname IIOPWorkClass_001 -type IIOP -wctype ASP -webmodule IIOPTestEjb_Server -setdefaultaction "Default_TC" -addmember *:*
wsadmin -lang jython -f workclassoperations.py -appname MyEjbApplication -wcname IIOPWorkClass_002 type IIOP -wctype ASP -webmodule IIOPTestEjb_Server -setdefaultaction "TC_A_IIOP_002" -addmember Demo:*
wsadmin -lang jython -f workclassoperations.py -appname MyEjbApplication -wcname IIOPWorkClass_003 -type IIOP -wctype ASP -webmodule IIOPTestEjb_Server -setdefaultaction "Default_TC" -addmember Demo:mySpecialMethod -addrule "1?clienthost=\'localhost\'?TC_A_IIOP_003"
wsadmin.sh -lang jython -f workclassoperations.py -appname A -wcname JMSWorkClass1 -type JMS -wctype ASP -webmodule microwebmodule -setdefaultaction "Default_TC" -addmember bus1:destination1
wsadmin.sh -lang jython -f workclassoperations.py -appname MdbAA -wcname JMSWorkClass2 -type JMS -wctype ASP -webmodule MDBAA -ejbNameMDBAA -setdefaultaction "Default_TC" -addmember bus1:destination2