You can create an empty business-level application, and then add assets or business-level applications as composition units to the empty business-level application.
This task assumes a basic familiarity with command framework programming. Read about command framework programming in the application programming interfaces documentation.
You can create an empty business-level application using programming, the administrative console, or the wsadmin tool.
Perform the following steps to create an empty business-level application using programming. In your code that creates the empty business-level application, you must provide the name parameter. The name parameter specifies the name of the business-level application that you create.
After you successfully run the code, the empty business-level application is created.
The following example shows how to create an empty business-level application based on the previous steps. Some statements are split on multiple lines for printing purposes.
package com.ibm.ws.management.application.task; import java.util.Properties; import com.ibm.websphere.management.AdminClient; import com.ibm.websphere.management.AdminClientFactory; import com.ibm.websphere.management.Session; import com.ibm.websphere.management.cmdframework.AdminCommand; import com.ibm.websphere.management.cmdframework.CommandMgr; import com.ibm.websphere.management.cmdframework.CommandResult; import com.ibm.websphere.management.exception.AdminException; import com.ibm.websphere.management.async.client.AsyncCommandClient; public class CreateEmptyBLA { public static void main(String[] args) { try { // Connect to the application server. // This step is optional if you use the local // command manager. Comment out the lines to and including // CommandMgr cmdMgr = CommandMgr.getClientCommandMgr( // soapClient); // to get the soapClient soap client if you use the local // command manager. String host = "localhost"; String port = "8880"; // Change to your port number if it is // not 8880. Properties config = new Properties(); config.put(AdminClient.CONNECTOR_HOST, host); config.put(AdminClient.CONNECTOR_PORT, port); config.put(AdminClient.CONNECTOR_TYPE, AdminClient.CONNECTOR_TYPE_SOAP); System.out.println("Config: " + config); AdminClient soapClient = AdminClientFactory.createAdminClient(config); // Create the command manager. CommandMgr cmdMgr = CommandMgr.getClientCommandMgr(soapClient); // Comment out the previous lines to create a client command // manager if you are using a local command manager. // Uncomment the following line to create a local command // manager: // // CommandMgr cmdMgr = CommandMgr.getCommandMgr(); System.out.println("\nCreated command manager"); // Optionally create an asynchronous command handler // for listening to command notifications. // Comment out the following line if no further handling // of command notification is required: AsyncCmdTaskHandler listener = new AsyncCmdTaskHandler(); // Create an asynchronous command client. // Set up the session. String id = Long.toHexString(System.currentTimeMillis()); String user = "content" + id; Session session = new Session(user, true); // If no command handler is used, replace the listener with // null for the AsyncCommandClient object that follows. AsyncCommandClient asyncCmdClientHelper = new AsyncCommandClient(session, listener); System.out.println("\nCreated async command client"); // Create the command that creates an empty // business-level application. String cmdName = "createEmptyBLA"; AdminCommand cmd = cmdMgr.createCommand(cmdName); cmd.setConfigSession(session); // Create an empty // business-level application using // the session created. System.out.println("\nCreated " + cmdName); // Set the name command parameter. String blaName = "bla1"; cmd.setParameter("name", blaName); System.out.println("\nSet name parameter to " + cmd.getParameter("name")); // Uncomment the following lines to set the description of // the business-level application being created: // // String blaDescription = "description for bla1"; // cmd.setParameter("description", blaDescription); // System.out.println("\nSet description parameter to " + // cmd.getParameter("description")); // Call the asynchronous command client to // process the command parameters. try { asyncCmdClientHelper.processCommandParameters(cmd); System.out.println("\nCompleted process command " + "parameters"); } catch (Throwable th) { System.out.println("Failed from " + "asyncCmdClientHelper.processCommandParameters(cmd)."); th.printStackTrace(); System.exit(-1); } // Call the asynchronous command client to run the command. asyncCmdClientHelper.execute(cmd); System.out.println("\nCompleted command execution"); // Check the command result. CommandResult result = cmd.getCommandResult(); if (result != null) { if (result.isSuccessful()) { System.out.println("\nCommand ran successfully " + "with result\n" + result.getResult()); } else { System.out.println("\nCommand ran with " + "Exception"); result.getException().printStackTrace(); } } } catch (Exception e) { e.printStackTrace(); } } } package com.ibm.ws.management.application.task; import com.ibm.websphere.management.cmdframework.provider.CommandNotification; import com.ibm.websphere.management.async.client.AsyncCommandHandlerIF; public class AsyncCmdTaskHandler implements AsyncCommandHandlerIF { public void handleNotification(CommandNotification notification) { // Add your own code here to handle the received notification. System.out.println("\nEXAMPLE: notification received: " + notification); } }
You can add business-level applications or assets as composition units into the newly created business-level application. Alternatively, you can add the newly created business-level application to other business-level applications.
In this information ...Related concepts
Related tasks
| IBM Redbooks, demos, education, and more(Index) |