Example: Invoking showPoolContents using the wsadmin tool
This example Java program uses the wsadmin tool to invoke showPoolContents.
/** * "This sample program is provided AS IS and may be used, executed, copied and modified without royalty payment * by customer (a) for its own instruction and study, (b) in order to develop applications designed to run with * an IBM WebSphere product, either for customer's own internal use or for redistribution by customer, as part * of such an application, in customer's own products. " * Product 5724i63, (C) COPYRIGHT International Business Machines Corp., 2004 * * All Rights Reserved * Licensed Materials - Property of IBM * * This program will display an active mbean object name and the connection pool. * * To run this program * * 1. call "%WAS_HOME%/bin/setupCmdLine.bat" * * 2. "%JAVA_HOME%\bin\java" "%CLIENTSAS%" "-Dwas.install.root=%WAS_HOME%" "-Dwas.repository.root=%CONFIG_ROOT%" * -Dcom.ibm.CORBA.BootstrapHost=%COMPUTERNAME% -classpath "%WAS_CLASSPATH%;%WAS_HOME%\lib\admin.jar;%WAS_HOME% * \lib\wasjmx.jar;." ShowPoolContents DataSource_mbean_name */ import java.util.Properties; import java.util.Set; import javax.management.*; import com.ibm.websphere.management.AdminClient; import com.ibm.websphere.management.AdminClientFactory; import com.ibm.websphere.management.exception.ConnectorException; public class ShowPoolContents { private AdminClient adminClient; public static void main(String[] args) { try { String name2 = null; String port = null; if(args.length <2){ System.out.println("Enter name for the mbean and port"); return; } else { name2 = args[0]; port = args[1]; System.out.println("Searching for name"+name2); } ShowPoolContents ace = new ShowPoolContents(); // Create an AdminClient ace.createAdminClient(port); ObjectName[] cfON = ace.queryMBean("DataSource", null); if (cfON.length == 0) { System.out.println(" *Error : queryMBean did not find any active mbeans of type DataSource."); System.out.println(" At first touch of a DataSource, an mbean will be created. To touch a DataSource, use " + "getConnection"); return; } int selectedObjectName = -1; String findName = name2; for(int i=0;i " + results); } catch (Exception e) { System.out.println(" *Exception : " + e.toString()); e.printStackTrace(System.out); } } private void createAdminClient(String port) { // Set up a Properties object for the JMX connector attributes Properties connectProps = new Properties(); connectProps.setProperty(AdminClient.CONNECTOR_TYPE, AdminClient.CONNECTOR_TYPE_SOAP); connectProps.setProperty(AdminClient.CONNECTOR_HOST, "localhost"); connectProps.setProperty(AdminClient.CONNECTOR_PORT, port); // Get an AdminClient based on the connector properties try { adminClient = AdminClientFactory.createAdminClient(connectProps); } catch (ConnectorException e) { System.out.println("Exception creating admin client: " + e); System.exit(-1); } System.out.println("Connected to DeploymentManager"); } // helper method to query mbean by type / name public ObjectName[] queryMBean(String type, String name) throws Exception { String s = "*:"; if (type != null) s += "type=" + type; if (name != null) s += ",name=" + name; s += ",*"; System.out.println("queryMBean: " + s); ObjectName ion = new ObjectName(s); Set set = adminClient.queryNames(ion, null); Object[] o = set.toArray(); ObjectName[] on = new ObjectName[o.length]; for (int i = 0; i <o.length; i++) { on[i] = (ObjectName) o[i]; } return on; } }
Related tasks
Change connection pool settings with the wsadmin tool
Related Reference
Example: Accessing MBean connection factory and data sources using wsadmin
Reference topic