Index Changes
This is version 4. It is not the current version, and thus it cannot be edited.
[Back to current version]   [Restore this version]
Copyright 2007 Sun Microsystems

*** Work In Progress ***

1. Introduction
   1.1. Project/Component Working Name:
	OpenESB Runtime Configuration UI

   1.2. Name of Document Author/Supplier:
	Srinivasan Chikkala <srinivasan.chikkala@sun.com>

   1.3. Date of This Document:
	04/02/07 (April 02, 2007)

   1.4. Name of Major Document Customer(s)/Consumer(s):
	1.4.1. The ARC(s) you expect to review your project:
		Open ESB Team(Keith Babo, Mark White,...) 
	1.4.2. The name of your business unit:
		Open ESB Community

   1.5. Email Aliases:
    	1.5.1. Responsible Manager: Suresh Potiny <suresh.potiny@sun.com>
    	1.5.2. Responsible Engineer(s): 
                    Mark White <Mark.White@Sun.COM>
                    Mike Wright <Michael.A.Wright@Sun.COM>
                    Mark Saunders <Mark.Saunders@Sun.COM>
    	1.5.3. Marketing Manager: - 
	1.5.4. Interest List: dev@open-esb.dev.java.net

2. Project Summary
   2.1. Project Description:

	OpenESB runtime has several configuration settings which can be set
        depending on user's requirements. This project allows users to view and 
        modify the OpenESB runtime configuration settings using a web based GUI,
        CLI or Ant scripts. This project also provides an API to view and modify
        the OpenESB runtime configuration settings by a java based rich clients 
        such as Netbeans IDE.

   2.2. Risks and Assumptions:
		
        - It is assumed that the APIs supported by the OpenESB runtime should 
          be available on all platforms on which OpenESB is implemented 
          including Glassfish V2.
        - By tightly integrating the web based gui into Glassfish V2 web console,
          there is a risk of incompatible GUI between tools for OpenESB on other 
          platforms.
        - CLI tool in which this feature will be available is Glassfish V2 
          specific tool.

3. Business Summary
   3.1. Problem Area:
	
        OpenESB runtime configuration settings scatter across various places in
        the runtime implementation and are also platform specific such as storing
        the configuration in the domain.xml of the glassfish etc. Users who are
        trying to set these configuration settings for runtime will find it
        difficult to know all the internal details on how and where to set
        runtime configuration.

        The UI tools and the API will provide a user friendly views and
        modification options to the users on the runtime configuration so that
        users will not need to deal with the internals of the runtime
        configuration.

   3.2. Market/Requester:

        OpenESB users and developers trying to set the OpenESB runtime
        configuration during the use of the product.

   3.3. Business Justification:

        It is important to provide this ease of use feature to the OpenESB
        product to will the users and developers.

   3.4. Competitive Analysis:

        This project is all about ease of use. By providing user friendly UI 
        and a standard API to manage the runtime configuration, customers(users 
        and developers) will be more inclined to use OpenESB than the other ESB 
        products such as ServiceMix, Mule etc.

   3.5. Opportunity Window/Exposure:
	
        This project should be available with the OpenESB.next 

   3.6. How will you know when you are done?:

        We will know that this project is complete when there are no Bugs and 
        RFEs reported by users and developers from OpenESB community.
        

4. Technical Description:
    4.1. Details:

        The OpenESB runtime configuration settings will be exposed as list of 
        properties to the clients ( GUI or CLI ) that are interested in viewing 
        and modifying them. The changes made by the clients to these properties 
        will be persisted to retain the changes between server restarts.

        4.1.1. Runtime:

        Since the configuration settings are not fixed, runtime will expose them
        as set of properties to the clients.
        In order to present these configuration settings to the users in a user 
        friendly manner, the runtime interface should expose extra metadata for 
        each property that it exposes as a configuration settings. For this 
        purpose, runtime will use JMX interfaces like MBean, MBeanInfo and 
        MBeanAttributeInfo as a interface to the clients.        

        4.1.2. Common Client:

        Since there are more than one client that will be accessing the runtime
        configuration settings interface, a reusable common client interface 
        will be provided on the client side to access the runtime configuration.
        implementation of this interface on the common client will take care of 
        common jmx management code required by the client side.

        4.1.3. Web Admin GUI:
        
        Web Admin GUI will use the common client interface to access the runtime
        configuration settings and their metadata such as description, type etc.
        and present that information as a editable GUI under JBI screens in a 
        user friendly GUI. See interfaces section for the url for the screen 
        shots for admin GUI.

        4.1.4. ASADMIN CLI:

        ASADMIM CLI will use the common client interface to access the runtime
        configuration settings. it will provide commands to display the runtime
        configuration settings and also to update these settings. See the 
        Interface section for the list of commands.

        4.1.5. JBI Ant Tasks:
        
        Since we will have a multi-platform implementation for the OpenESB, we 
        may provide the Ant as a standard common interface for accessing the 
        runtime configuration settings on all platforms.

        4.1.6. Rich Client(IDE): 
        
        Rich client implementation is out of scope for this project, but any 
        rich client can use the client side common client APIs or can directly 
        use the Runtime JMX interfaces for the runtime configuration settings.

    4.2. Bug/RFE Number(s):
	
        None.
    
    4.3. In Scope:
        None.
    4.4. Out of Scope:

	Rich Client interface such as Netbeans GUI for the runtime configuration
        is out of scope for this project and will be implemented by a separate 
        project which could use the APIs exported from this project.
    
    4.5. Interfaces:
        Note that the design of the interfaces are subject to change.

        4.5.1. Runtime:
               //TBD : Provide url for Runtime interface description on the jbiwki page
        4.5.2. Common Client:
               //TBD : Provide url for Common Client interface description on the jbiwki page
        4.5.3. Web Admin GUI:
               //TBD : Provide url for the Web Admin GUI screen shots
        4.5.4. ASADMIN CLI:
               //TBD : Provide url for the asadmin commands for accessing runtime configuration settings on jbiwki page
        4.5.5. JBI Ant Tasks:
               //TBD : Provide url for JBI Ant tasks for accessing runtime configuration settings on jbiwki page.
    4.6. Doc Impact:
	- Admin GUI documentation should be updated for the Runtime configuration
          GUI.
        - CLI tool should provide man pages to provide help on the commands 
          reltate to the runtime configuration
	- JBI Ant tasks if supplied for for runtime configuation settings, 
          should be documented.
    
    4.7. Admin/Config Impact:
        - new screen that will manage the OpenESB runtime configuration will be
          added to the Glassfish Admin Console under JBI Administration screens.
        - asadmin CLI tool may use the existing commands or add new command to
          manage the OpenESB runtime configuration via CLI.
        - Jbi Ant tasks may add new ant task to manage the runtime configuration.
        - There will be new interface on the common client to set/get the
          runtime configuration.
    
    4.8. HA Impact:
	None.
    
    4.9. I18N/L10N Impact:
	- Web Admin GUI need to provide internationalization and localization 
          support for the GUI related to the runtime configuration.
        - CLI need to provide internationalization and localization support for 
          the commands and the output related to the runtime configuration 
          commands.
        - Ant tasks need to provide internationalization and localization
          support for the output related to the runtime configuration commands.
    
    4.10. Packaging & Delivery:

        This project will be packaged in multiple modules of the OpenESB. The
        impacted modules are
            - Runtime configuation APIs implementation will be packaged in the 
              Runtime module jar files
            - Common client interfaces and the implemenation will be packaged in
              the jbi-admin-common.jar 
            - Web Admin GUI changes will be packaged under Glassfish Admin Console.
            - CLI changes will be packaged under Glassfish CLI tool
            - Ant tasks will be packaged in jbi-ant-tasks.jar or jbi-ant-tasks-ext.jar 
    
    4.11. Security Impact:
	
        None.
    
    4.12. Dependencies:

	- Depends on the Runtime implemenation of the Runtime configuration APIs.

5. Reference Documents:
    jbi CLI commands:
        http://www.glassfishwiki.org/jbiwiki/Wiki.jsp?page=Glassfish9.1JBICLIProjectPlan    
    jbi admin GUI:
        http://www.glassfishwiki.org/jbiwiki/Wiki.jsp?page=Glassfish9.1WebConsole
    jbi ant tasks:
        http://www.glassfishwiki.org/jbiwiki/Wiki.jsp?page=Glassfish9.1Ant
    jbi common client:
        http://www.glassfishwiki.org/jbiwiki/Wiki.jsp?page=Glassfish9.1CommonClient
    OpenESB runtime:
        http://www.glassfishwiki.org/jbiwiki/Wiki.jsp?page=Glassfish9.1Runtime

6. Resources and Schedule:
   6.1. Projected Availability:
	August 2007

   6.2. Cost of Effort:
	// TBD	

   6.3. Cost of Capital Resources:
	// TBD

   6.4. Product Approval Committee requested information:
   	6.4.1. Consolidation or Component Name:
	6.4.3. Type of CPT Review and Approval expected:
		RFE.
        6.4.4. Project Boundary Conditions:
		// Give the document's URL  http://....
	6.4.5. Is this a necessary project for OEM agreements:
		NA
	6.4.6. Notes:
		// See dependencies section above.
	6.4.7. Target RTI (Request to Integrate) Date/Release:
               June 2007?
	6.4.8. Target Code Design Review Date:
               May 2007?
	6.4.9. Update approval addition:
		None.

   6.5. ARC review type:
		SelfReview

7. Prototype Availability:
   7.1. Prototype Availability:
	// TBD.
   7.2. Prototype Cost:
	// TBD.

JSPWiki v2.4.100
[RSS]
« Home Index Changes Prefs
This particular version was published on 03-Apr-07 12:32 PM, -0700 by srini_chikkala