WSADMIN tool
The WebSphere Application Server wsadmin tool provides the ability to run scripts. The wsadmin tool supports a full range of product administrative activities You can use the wsadmin tool to manage WebSphere Application Server as well as the configuration, application deployment, and server run-time operation
wsadmin tool supports a full range of product
administrative activities.
The wsadmin tool
supports two scripting languages: Jacl and Jython. BUt Jacl has been depricated with the v6.1 relase of websphere and the recomended direction is to use jython. Five objects are
available when you use scripts:
- AdminControl: Use to run operational commands.
- AdminConfig: Use to run configurational commands to create or modify WebSphere Application Server configurational elements.
- AdminApp: Use to administer applications.
- AdminTask: Use to run administrative commands.
- Help:
Use to obtain general help.
To perform a task using scripting, you must first perform the following steps:
- Choose a scripting language. The wsadmin tool only supports Jacl and Jython scripting languages. Jacl is the language specified by default. If you want to use the Jython scripting language, use the -lang option or specify it in the wsadmin.properties file.
- Start the wsadmin scripting client interactively, as an individual command, in a script, or in a profile.
This will help us go create JNDI's for application, Updating the webservice URL's Creating or deleting Activation Specifications for our application on server and many more.. It will help us more..
** 1. I will tell u how to use "AdminTask" for updating the WSBinding URL using this script.
Syntax :
AdminTask.modifySCAImportWSBinding('[-moduleName ' +<moduleName>+'-import ' + < import name> + ' -endpoint ' + <new url>+ '-applicationName ' + <applicationName> +'App] ')
EX:
AdminTask.modifySCAImportWSBinding('[-moduleName '
+ SampleWebserviceModule+'-import ' + TargetWebserviceImport + ' -endpoint ' +http://172.17.6.120:/DecisionService/DetermineService + '-applicationName ' + SampleWebserviceModuleApp]
')
for saving these changes in server we should use AdminConfig.save.
By using this code we can able to update the url of WSBining Import of any application.
** 2. I will tell u how to update JNDI of application by using AdminApp.
Syntax: AdminApp.edit('<ApplicationAppname>','[-BindJndiForEJBMessageBinding [[ ApplicationNameEJB.jar <port name of Export> ApplicationNameEJB.jar,META-INF/ejb-jar.xml "" <activation specification name> "" "" ]]]')
EX:
AdminApp.edit('SampleApplicationModuleApp','[-BindJndiForEJBMessageBinding [[ SampleApplicationModuleEJB.jar ChangeEventPort SampleApplicationModuleEJB.jar,META-INF/ejb-jar.xml "" jms/ChangeEventAllOperation_AS "" "" ]]]')
for saving these changes in server we should use AdminConfig.save.
** 3. Code For Creating Queues
Syntax:
AdminTask.createWMQQueue('qnode(cells/qcell/nades/qnode|node.xml)','[-name <jsmqueue name> -jndiName <queue jndi name> -queueName <wmqQueuename> -qmgr <queue Manager Name> - description ]')
Ex :
AdminTask.createWMQQueue('qnode(cells/qcell/nades/qnode|node.xml)','[-name jmsQueueName -jndiName jms/jmsQueueName -queueName MQQueueName -qmgr QMGR - description ]')
**4. Code For creating Connection Factory
Syntax:
AdminTask.createWMQConnectionFactory('qnode(cells/qcell/nades/qnode|node.xml)','[-type QCF -name <QCF name> -jndiName <queue ConnectionFactory jndi name> - description -qmgrName <WMQqueue Manager Name> -wmqTransportType BINDINGS_THEN_CLIENT -qmgeHostName <wmq Server Host Name> -qmgrPortNumber <WMQServicePort> -qmgrSvrconnChannel <ChannelName> ]')
EX:
AdminTask.createWMQConnectionFactory('qnode(cells/qcell/nades/qnode|node.xml)','[-type QCF -name <QCF name> -jndiName <queue ConnectionFactory jndi name> - description -qmgrName <WMQqueue Manager Name> -wmqTransportType BINDINGS_THEN_CLIENT -qmgeHostName <wmq Server Host Name> -qmgrPortNumber <WMQServicePort> -qmgrSvrconnChannel <ChannelName> ]')
Syntax:
AdminTask.createWMQConnectionFactory('qnode(cells/qcell/nades/qnode|node.xml)','[-type QCF -name <QCF name> -jndiName <queue ConnectionFactory jndi name> - description -qmgrName <WMQqueue Manager Name> -wmqTransportType BINDINGS_THEN_CLIENT -qmgeHostName <wmq Server Host Name> -qmgrPortNumber <WMQServicePort> -qmgrSvrconnChannel <ChannelName> ]')
EX:
AdminTask.createWMQConnectionFactory('qnode(cells/qcell/nades/qnode|node.xml)','[-type QCF -name <QCF name> -jndiName <queue ConnectionFactory jndi name> - description -qmgrName <WMQqueue Manager Name> -wmqTransportType BINDINGS_THEN_CLIENT -qmgeHostName <wmq Server Host Name> -qmgrPortNumber <WMQServicePort> -qmgrSvrconnChannel <ChannelName> ]')
Run This Code By Using "wsadmin" :
save this file as <filename>.py into \RootDirectory\InstallationPath\profiles\qbpmaps\bin
open command prompt
c:\>cd \RootDirectory\InstallationPath\profiles\qbpmaps\bin
c: \ RootDirectory\InstallationPath\profiles\qbpmaps\bin> wsadmin.bat -lang jython -username admin -password admin -f <filename>.py
EX:
c: \ RootDirectory\InstallationPath\profiles\qbpmaps\bin> wsadmin.bat -lang jython -username admin -password admin -f URLUpdate.py