Weblogic

Apache Module
"The PathTrim parameter specifies a string trimmed from the beginning of the URL before the request is passed to the WebLogic Server instance"
 * http://download.oracle.com/docs/cd/E11035_01/wls100/plugins/apache.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/plugins/plugin_params.html#wp1143055

Deployments
In test env, copy the TAG/*.war file and use symlinks.
 * easier to track and version as you migrate new work there

Settings
-Dweblogic.log.RedirectStdoutToServerLogEnabled=true

General

 * http://download.oracle.com/docs/cd/E13222_01/wls/docs81/adminguide/overview_domain.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/medrec_tutorials/devmode.html
 * https://sites.google.com/site/weblogicadminsite/Home/weblogic-issues/wla-interview-questions/weblogic-administrator-interview-questions-3
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs81/jmx/overview.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs81/javadocs/index.html
 * http://blogs.oracle.com/WebLogicServer/2009/09/sample_weblogic_jmx_client.html

JDBC
"You can use the resource-ref in the web.xml and the corresponding reference-descriptor in weblogic.xml. Ex: web.xml"  myDataSource javax.sql.DataSource CONTAINER  "weblogic.xml"   myDataSource dsName   "See this for details Weblogic doc. Be careful, with the example there, there's a typo in it. Then in your code, look it up using' java:comp/env/myDataSource'. In JBoss, the web.xml will remain the same. Instead of weblogic.xml, you will have to have a jboss-web.xml with the following contents:"  myDataSource</res-ref-name> java:dsName</jndi-name> </resource-ref> "The lookup code will remain unchanged."
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs92/jdbc_admin/config.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/jdbc_admin/jdbc_datasources.html
 * Using WLST to Create JDBC System Resources
 * http://forums.sun.com/thread.jspa?threadID=5335721

Slides

 * http://www.slideshare.net/Bhavsidd/wlst-presentation

Node Manager
3.Invoke WLST and connect to an Administration Server using the connect command. See Using the WebLogic Scripting Tool in WebLogic Scripting Tool. 4.Run nmEnroll using the following syntax: nmEnroll([domainDir], [nmHome])
 * http://neeraj-soa-tips.blogspot.com/2010/06/part-1-how-to-configure-node-manager-to.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/nodemgr/nodemgr_config.html

For example,

nmEnroll('C:/bea/user_projects/domains/prod_domain', 'C:/bea/wlserver_10.0/common/nodemanager')
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/reference.html#nmConnect

Latest

 * http://weblogicserver.blogspot.com/2010/08/configure-email-notification-in.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/using_WLST.html#wp1093952
 * http://avdeo.com/2009/09/30/wlst-weblogic-scripting-tool/
 * http://download.oracle.com/docs/cd/E13218_01/wlp/docs92/db/appx_oracle_rac_scripts.html
 * http://middlewaremagic.com/weblogic/?p=4277
 * http://middlewaremagic.com/weblogic/?author=1
 * http://download.oracle.com/docs/cd/E11035_01/wls100/jdbc_admin/config.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs90/config_scripting/domains.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs90/jdbc_admin/packagedjdbc.html
 * http://unni-at-work.blogspot.com/2009_02_01_archive.html
 * http://wlstbyexamples.blogspot.com/2010_02_01_archive.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs90/config_scripting/config_WLS.html
 * wlst script to get all the parameters of connection pools and jms systems

JNDI
connect('weblogic','weblogic','t3://localhost:7001') edit startEdit cd('/') cmo.createJDBCSystemResource('MDS1') cd('/JDBCSystemResources/MDS1/JDBCResource/MDS1') cmo.setName('MDS1') cd('/JDBCSystemResources/MDS1/JDBCResource/MDS1/JDBCDataSourceParams/MDS1') set('JNDINames',jarray.array([String('MDS1')], String)) cmo.setAlgorithmType('Failover') cmo.setDataSourceList('DS1,DS2') cd('/JDBCSystemResources/MDS1') set('Targets',jarray.array([ObjectName('com.bea:Name=AdminServer,Type=Server')], ObjectName)) activate print('Exiting...') exit
 * http://unni-at-work.blogspot.com/2009/03/multi-data-source-using-wlst.html
 * 1) File name: MDS-Create.py
 * 2) This python program would create a MultiDataSource - 'MDS1'
 * 3) and adds two datasources -'DS1' and 'DS2'
 * 4) and targets its to a Server - 'AdminServer'
 * 5) Please change the code as per your environment and needs
 * 1) creates a MultiDataSource named ‘MDS1’
 * 1) sets the JNDI name of the multi datasource to 'MDS1'
 * 1) sets the algorithm type to failover
 * 2) Refer this link for valid values
 * 3) http://edocs.bea.com/wls/docs100/wlsmbeanref/mbeans/JDBCDataSourceParamsBean.html#AlgorithmType
 * 1) IMPORTANT -> Adds two datasources 'DS1' and 'DS2' to the multi datasource
 * 1) targets the MDS Server - 'AdminServer'

connect(‘weblogic’,'weblogic’,'t3://localhost:7001') domainRuntime cd(‘ServerRuntimes/AdminServer/JDBCServiceRuntime/AdminServer/JDBCDataSourceRuntimeMBeans/TestDS’) objectArray = jarray.array([], java.lang.Object) stringArray = jarray.array([], java.lang.String) invoke(’shutdown’, objectArray, stringArray) exit connect(‘weblogic’,'weblogic’,'t3://localhost:7001') domainRuntime cd(‘ServerRuntimes/AdminServer/JDBCServiceRuntime/AdminServer/JDBCDataSourceRuntimeMBeans/TestDS’) objectArray = jarray.array([], java.lang.Object) stringArray = jarray.array([], java.lang.String) invoke(’start’, objectArray, stringArray) exit
 * http://middlewaremagic.com/weblogic/?m=201007

Logging
// Loading properties from a file located at the same location as the script loadProperties('config.properties'); // Connecting to the administration server using the three values (USER, PASSWORD & URL) defined in the property file connect (USER,PASSWORD,URL) edit startEdit servers = cmo.getServers for server in servers : cd('/Servers/' + server.getName + '/Log/' + server.getName) cmo.setFileName(HOME + '/logs/' + server.getName) cmo.setFileMinSize(5000) cmo.setRotateLogOnStartup(true) cmo.setDomainLogBroadcastSeverity('Off') cmo.setMemoryBufferSeverity('Off') cmo.setLogFileSeverity('Info') cmo.setStdoutSeverity('Off') activate exit
 * http://m-button.blogspot.com/2008/07/changing-server-log-level-with-wlst.html

Reference

 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/reference.html#wp1060229
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/manage_servers.html
 * http://download.oracle.com/docs/cd/E13218_01/wlp/docs92/db/appx_oracle_rac_scripts.html
 * http://unni-at-work.blogspot.com/2009/02/creating-jdbc-data-source-using-wlst_20.html
 * http://wlstbyexamples.blogspot.com/2010/02/server-state-using-wlst.html

Server

 * connect(userConfigFile=auth_config, userKeyFile=auth_key, url=auth_url)
 * start('name','Cluster')
 * start('name','Server')
 * shutdown('servername')
 * startServer('customercare-server1')

Application
wls:/custcare/serverConfig> e = ['qc-autocomplete','qc-update','update-errors','update-salesforce'] wls:/custcare/serverConfig> for k in e: ... startApplication(k) ... Starting application edsengine-qc-autocomplete.
 * startApplication('appname')
 * stopApplication('appname')
 * deploy(context, filePath, targets=target)
 * undeploy(context)

Editing

 * edit
 * startEdit
 * save
 * activate
 * activate

Node Manager

 * nmConnect('user','password','localhost','5556','domain','/path/to/domain','ssl')
 * nmStart('AdminServer')

Stuff
connect(‘weblogic’, ‘weblogic’, ‘localhost:7001’) storeUserConfig('c:/myFiles/myuserconfigfile.secure', 'c:/myFiles/myuserkeyfile.secure')
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/using_WLST.html

To use the user configuration file and key file: connect(userConfigFile='c:/myfiles/myuserconfigfile.secure', userKeyFile='c:/myfiles/myuserkeyfile.secure') c:\>java weblogic.WLST wls:/(offline)>

2.Use the writeIniFile command to convert WLST definitions and method declarations to a .py file. wls:/(offline)> writeIniFile("wl.py") The Ini file is successfully written to wl.py wls:/(offline)>

3.Open a new command shell and invoke Jython directly by entering the following command: c:\>java org.python.util.jython

The Jython package manager processes the JAR files in your classpath. The Jython prompt appears:

>>>

4.Import the WLST module into your Jython module using the Jython import command. >>>import wl

5.Now you can use WLST methods in the module. For example, to connect WLST to a server instance: wl.connect('username','password')

domainConfig servers = cmo.getServers domainRuntime notStoppedServers = [] stoppedServers = [] for server in servers: try: cd('/ServerRuntimes/' + server.getName) print server.getName + ': ' + get('State') notStoppedServers.append(server.getName) except WLSTException,e: print server.getName + is not running. stoppedServers.append(server.getName) ... if len(notStoppedServers) > 0 : print 'there's a server still runnig should wait a bit more!!!'
 * http://www.coderanch.com/t/69707/BEA-Weblogic/WLST-command-restart-cluster

cd('Servers/YOUR_SERVER_NAME/ServerStart/YOUR_SERVER_NAME') set('Arguments', '-Dweblogic.debug.DebugServerMigration') Make use of a custom start script that will contain the specific environment variables necessary. To do this, first configure the nodemanager to use a custom start script by specifying StartScriptEnabled=true and StartScriptName=customStartWebLogic.sh in the nodemanager.properties file or on the command line when starting the nodemanager. Then create the customStartWebLogic.sh in the domain directory that will set the appropriate variables and subsequently call startWebLogic.sh. An very basic example of customStartWebLogic.sh below:
 * http://blogs.oracle.com/WebLogicServer/2009/08/starting_wls_through_nodemanager_details.html

export FOO=foo_value . ./startWebLogic.sh run java weblogic.WLST nmConnect(domainName=’my_domain’, username=’weblogic’, password=’welcome1’) nmStart('AdminServer')
 * http://blogs.oracle.com/jamesbayer/2010/01/weblogic_nodemanager_quick_sta.html

c:\>java weblogic.WLST wls:/offline> startNodeManager ... Start an Administration Server. wls:/(offline)> connect('username','password') start('managedServerName','Server') start('managed1','Server') start('clusterName', 'Cluster') start('mycluster', 'Cluster')
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/manage_servers.html

More Stuff

 * http://www.coderanch.com/t/445352/BEA-Weblogic/WLST-find-status-application-running
 * http://webservice.bea.com/examplesWebApp/docs/core/index.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/config_scripting/manage_servers.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs103/config_scripting/reference.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/using_WLST.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/config_scripting/using_WLST.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/nav_edit.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/config_WLS.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/updateplan.html
 * http://download.oracle.com/docs/cd/E12840_01/wls/docs103/config_scripting/monitoring.html
 * http://blogs.oracle.com/bala/2009/03/wlst_best_practices.html
 * http://blogs.oracle.com/WebLogicServer/2009/10/developing_custom_mbeans_to_ma.html
 * http://ericmiles.wordpress.com/tag/wlst/
 * http://webservice.bea.com/examplesWebApp/docs/core/index.html
 * http://blogs.oracle.com/jamesbayer/2007/10/automate_wls_console_tasks_wit.html
 * http://blogs.oracle.com/jamesbayer/2009/04/using_wlst_with_the_weblogic_s.html
 * http://objectmix.com/weblogic/549075-load-properties.html
 * http://wlstbyexamples.blogspot.com/
 * http://webservice.bea.com/examplesWebApp/docs/core/index.html
 * http://weblogic-wonders.com/weblogic/wlst/
 * http://weblogic-wonders.com/weblogic/2010/04/22/using-wlst-ant-task-to-get-serverdetails/
 * http://weblogic-wonders.com/weblogic/2010/07/01/getting-notification-on-custommbean-attribute-change/
 * http://code.google.com/p/wlst-archives/updates/list
 * http://stackoverflow.com/questions/591106/using-wlst-to-bounce-a-managed-server
 * http://forums.oracle.com/forums/thread.jspa?threadID=1000910&tstart=120
 * http://download.oracle.com/docs/cd/E15523_01/web.1111/e13715/config_wls.htm#WLSTG191
 * http://weblogic.sys-con.com/node/48932
 * http://forums.oracle.com/forums/thread.jspa?threadID=845535
 * http://download.oracle.com/docs/cd/E11035_01/wls100/wlsmbeanref/core/index.html

More WLST
 * http://prsync.com/oracle/using-weblogic-console-script-recording-to-create-customized-wlst-scripts-10136/
 * http://sites.google.com/site/weblogicadminsite/Home/cluster-creation-by-using-the-wlst
 * http://weblogic.sys-con.com/node/48932
 * http://nayidisha.com/techblog/tag/wlst
 * Importing WLST as a Jython Module
 * http://wlstbyexamples.blogspot.com/2010_02_01_archive.html
 * http://weblogic-wonders.com/weblogic/2010/04/22/using-wlst-ant-task-to-get-serverdetails/
 * http://blogs.oracle.com/bala/2008/09/encrypt_the_credentials_when_r.html
 * http://weblogicserver.blogspot.com/2008/09/encrypt-credentials-when-running-wlst.html
 * http://weblogicserver.blogspot.com/2008/10/how-to-encrypt-clear-text-password-with.html

Is there even more? connect('weblogic','weblogic','t3://localhost:7001') edit startEdit cd('/') cmo.createJDBCSystemResource('MDS1') cd('/JDBCSystemResources/MDS1/JDBCResource/MDS1') cmo.setName('MDS1') cd('/JDBCSystemResources/MDS1/JDBCResource/MDS1/JDBCDataSourceParams/MDS1') set('JNDINames',jarray.array([String('MDS1')], String)) cmo.setAlgorithmType('Failover') cmo.setDataSourceList('DS1,DS2') cd('/JDBCSystemResources/MDS1') set('Targets',jarray.array([ObjectName('com.bea:Name=AdminServer,Type=Server')], ObjectName)) activate print('Exiting...') exit
 * http://weblogicserver.blogspot.com/2009/02/do-not-step-on-others-feet-wlst.html
 * http://weblogicserver.blogspot.com/2009/03/check-for-resourceconfiguration.html
 * http://download.oracle.com/docs/cd/E13218_01/wlp/docs92/db/appx_oracle_rac_scripts.html
 * http://unni-at-work.blogspot.com/2009/03/multi-data-source-using-wlst.html
 * 1) File name: MDS-Create.py
 * 2) This python program would create a MultiDataSource - 'MDS1'
 * 3) and adds two datasources -'DS1' and 'DS2'
 * 4) and targets its to a Server - 'AdminServer'
 * 5) Please change the code as per your environment and needs
 * 1) creates a MultiDataSource named ‘MDS1’
 * 1) sets the JNDI name of the multi datasource to 'MDS1'
 * 1) sets the algorithm type to failover
 * 2) Refer this link for valid values
 * 3) http://edocs.bea.com/wls/docs100/wlsmbeanref/mbeans/JDBCDataSourceParamsBean.html#AlgorithmType
 * 1) IMPORTANT -> Adds two datasources 'DS1' and 'DS2' to the multi datasource
 * 1) targets the MDS Server - 'AdminServer'
 * Creating and Configuring Weblogic Domains using WLST offline
 * http://download.oracle.com/docs/cd/E13218_01/wlp/docs92/db/appx_oracle_rac_scripts.html

Security

 * http://download.oracle.com/docs/cd/E13214_01/wli/docs70/migrate/misc.htm
 * http://weblogic.sys-con.com/node/42929
 * http://download.oracle.com/docs/cd/E11035_01/wls100/server_start/failures.html

WLST IDE
writeIniFile import A import wlstModule.py as myWLST myWLST.connect(‘weblogic’,'weblogic’,'t3://sghattu:7001′) A.printFirstName(“satya”) myWLST.edit myWLST.startEdit newSvr = myWLST.cmo.createServer(‘ms1′) newSvr.setListenPort(8001) myWLST.activate myWLST.disconnect "WLST Module is under {WL_HOME}/common/wlst/modules/wlstModule.py. You can also generate one using the writeIniFile command." "If you are using WLST as a module, you should use java org.python.util.jython to invoke your scripts. Do not use java weblogic.WLST and import WLST as a module. This will import WLST Module into WLST NameSpace and if you mix the module calls with straight WLST calls, you will see some weird interactions. This is not recommended. Please use straight Jython if you are using WLST as a Module."
 * http://download.oracle.com/docs/cd/E15315_06/help/oracle.eclipse.tools.weblogic.doc/html/wlst.html
 * http://ghattus.com/2006/01/06/wlst-as-a-jython-module/
 * 1) connect to the server
 * 1) call a function from module A
 * 1) start and edit session and create a server

Node Manager

 * http://download.oracle.com/docs/cd/E13222_01/wls/docs81/adminguide/nodemgr.html
 * http://download.oracle.com/docs/cd/E13222_01/wls/docs81/adminguide/confignodemgr.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/nodemgr/java_nodemgr.html#wp1068415

Functionality
C:\bea\user_projects\domains\mydomain>java weblogic.security.Encrypt Password: {3DES}9HWsf87pJTw= "You should execute this utility from the domain folder as it requires the domain's password salt file (SerializedSystemIni.dat) for encrypting the clear text string. You can also pass the clear text string as an argument" C:\bea\user_projects\domains\mydomain>java weblogic.security.Encrypt testpwd {3DES}9HWsf87pJTw= "You can also use WLST to encrypt clear text strings as below:" C:\bea\user_projects\domains\mydomain>java weblogic.WLST Initializing WebLogic Scripting Tool (WLST) ... Welcome to WebLogic Server Administration Scripting Shell Type help for help on available commands wls:/offline> es = encrypt('testpwd') wls:/offline> print es {3DES}9HWsf87pJTw= wls:/offline>
 * How To Encrypt Clear Text Password

Commands

 * progress=redeploy
 * WLSTProgress

Examples
def shutdownCluster(clustername): try: shutdown(clustername,"Cluster"); except Exception, e:   print 'Error while shutting down cluster',e dumpStack return
 * http://www.coderanch.com/t/69707/BEA-Weblogic/WLST-command-restart-cluster

def startCluster(clustername): try: start(clustername,"Cluster"); except Exception, e:   print 'Error while starting cluster',e dumpStack return

servers = cmo.getServers domainRuntime notStoppedServers = [] stoppedServers = [] for server in servers: try: cd('/ServerRuntimes/' + server.getName) print server.getName + ': ' + get('State') notStoppedServers.append(server.getName) except WLSTException,e: print server.getName + is not running. stoppedServers.append(server.getName)
 * 1) domainConfig

if len(notStoppedServers) > 0 : print 'there's a server still runnig should wait a bit more!!!'

cd('/JDBCSystemResources/'+coName+'/JDBCResource/'+coName) set('Name',coName) cd('/JDBCSystemResources/'+coName+'/JDBCResource/'+coName+'/JDBCDataSourceParams/'+coName) set('JNDINames',jarray.array([String(coName)], String)) cd('/JDBCSystemResources/'+coName+'/JDBCResource/'+coName+'/JDBCDriverParams/'+coName) set('Url',url) set('DriverName',DRIVER ) set('Password',CONNECTIONPOOLPASSWORD)
 * http://objectmix.com/weblogic/535182-jdbc-data-source-creation-using-wlst.html

""" This script configures a JDBC data source as a System Module and deploys it to the server """ connect("weblogic","welcome1") edit
 * http://webservice.bea.com/examplesWebApp/examples/src/examples/wlst/online/jdbc_data_source_creation.py

dsname="myJDBCDataSource" server="examplesServer" cd("Servers/"+server) target=cmo cd("../..")
 * 1) Change these names as necessary

startEdit print 'Creating JDBCSystemResource with name '+dsname jdbcSR = create(dsname,"JDBCSystemResource") theJDBCResource = jdbcSR.getJDBCResource theJDBCResource.setName("myJDBCDataSource")
 * 1) start creation

connectionPoolParams = theJDBCResource.getJDBCConnectionPoolParams connectionPoolParams.setConnectionReserveTimeoutSeconds(25) connectionPoolParams.setMaxCapacity(100) connectionPoolParams.setTestTableName("SYSTABLES")

dsParams = theJDBCResource.getJDBCDataSourceParams dsParams.addJNDIName("ds.myJDBCDataSource")

driverParams = theJDBCResource.getJDBCDriverParams driverParams.setUrl("jdbc:pointbase:server://localhost/demo") driverParams.setDriverName("com.pointbase.xa.xaDataSource")
 * 1) driverParams.setUrl("jdbc:oracle:thin:@my-oracle-server:my-oracle-server-port:my-oracle-sid")
 * 2) driverParams.setDriverName("oracle.jdbc.driver.OracleDriver")

driverParams.setPassword("examples") driverProperties = driverParams.getProperties
 * 1) driverParams.setLoginDelaySeconds(60)

proper = driverProperties.createProperty("user") proper.setValue("examples")
 * 1) proper.setName("user")

proper1 = driverProperties.createProperty("DatabaseName") proper1.setValue("jdbc:pointbase:server://localhost/demo")
 * 1) proper1.setName("DatabaseName")

jdbcSR.addTarget(target)

save activate(block="true")

print 'Done configuring the data source'

Commands
connect(user,pass,url) disconnect deploy('archive.name', 'file.path', targets='server/cluster.name') execfile('foo.py') loadProperties('file.properties') shutdown('sdlnet', 'Cluster') start('sdlnet-01', 'Server') start('sdlnet', 'Cluster') state('sdlnet-01') storeUserConfig('configfile', 'keyfile') undeploy('appName')

Jython, Java and WLST
[weblogic@host util]$ CLASSPATH=$CLASSPATH:/opt/soa/scripts/bin/crypt.jar java weblogic.WLST

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help for help on available commands

wls:/offline> import com.encrypt.util.DesEncrypter wls:/offline> d = com.encrypt.util.DesEncrypter.encode("data","phrase") wls:/offline> d '8SGxkkJp/pY=' wls:/offline> exit

Tutorials

 * http://wlst-bea-weblogic-tcl.blogspot.com/2009/01/weblogic-bea-wlst.html
 * http://download.oracle.com/docs/cd/E11035_01/wls100/medrec_tutorials/devmode.html#wp1059683
 * http://download.oracle.com/docs/cd/E13218_01/wlp/docs92/db/appx_oracle_rac_scripts.html
 * http://forums.oracle.com/forums/thread.jspa?threadID=838428
 * http://weblogic-wonders.com/weblogic/2010/03/23/testing-datasource-status-using-wlst/
 * http://weblogic-wonders.com/weblogic/2010/05/18/wlst-datasource-creation-with-encrypted-password/
 * http://webservice.bea.com/examplesWebApp/examples/src/examples/wlst/online/jdbc_data_source_creation.py
 * http://weblogicserver.blogspot.com/2010/06/running-os-commands-from-wlst.html
 * http://weblogic-wonders.com/weblogic/2010/06/30/sending-email-alert-on-server-shutdown-using-wlst/
 * http://m-button.blogspot.com/2008/07/using-wlst-to-perform-regular.html

Common
$ . ./setDomainEnv.sh $ java weblogic.WLST wls:/offline> connect('user','pass','host:port') wls:/domain/serverConfig> storeUserConfig('auth.config','auth.key')

Articles

 * http://goliath.ecnext.com/coms2/gi_0199-4607643/Monitoring-and-controlling-WebLogic-servers.html

JMX
"The documentation is wrong; use comp/env/jmx/runtime instead of comp/jmx/runtime in your lookup."
 * http://blogs.oracle.com/WebLogicServer/2009/10/developing_custom_mbeans_to_ma.html
 * http://forums.oracle.com/forums/thread.jspa?messageID=2853147
 * http://download.oracle.com/docs/cd/E11035_01/wls100/jmx/understandWLS.html

Performance
"There is a very obscure issue with the random number generation on Linux (and Solaris) that causes problems with booting managed servers. It could also be attributed to very slow startup times in Weblogic. This is documented under:" "12.27.7 Random Number Generator May Be Slow on Machines With Inadequate Entropy" "In order to generate random numbers that are not predictable, SSL security code relies upon 'entropy' on a machine. Entropy is activity such as mouse movement, disk IO, or network traffic. If entropy is minimal or nonexistent, then the random number generator will be slow, and security operations may time out. This may disrupt activities such as booting a managed server into a domain using a secure admin channel. This issue generally occurs for a period after startup. Once sufficient entropy has been achieved on a JVM, the random number generator should be satisfied for the lifetime of the machine." Solution On low-entropy systems, you can use a non-blocking random number generator, providing your site can tolerate lessened security. To do this, add the -Djava.security.egd=file:///dev/urandom switch or file:/dev/./urandom to the command that starts the Java process. Note that this workaround should not be used in production environments because it uses pseudo-random numbers instead of genuine random numbers.
 * Problem with Entropy, Doc 1052950.1
 * http://download.oracle.com/docs/cd/E12839_01/doc.1111/e14773/weblogic_server_issues.htm#CIHIIBGJ