Chathura C. Ekanayake



Project Title

JMX Front for Axis2


Apache Axis2 is a java based web service engine that hosts java web services and enables java clients to access web services. Currently Axis2 is in M2 release and does not have a JMX interface. My project is to develop a JMX interface for Axis2, which enables administrators to configure the Axis2 registry using remote management applications through this interface.


  1. Prototype to study the feasibility and identify the things to be managed
  2. JMX MBeanServer initializing module which registers the MBeans and publish the MBeanServer
  3. MBeans and MBean implementations to access the manageable components
  4. Servlet to provide web user interface using JMX front

Project Details

Apache Axis2 is a java based web service engine which is currently in its M2 Release. Currently it does not include JMX support. JMX technology provides a standard way of managing resources such as applications, devices, and services. This technology also allows integrating applications with existing network management solutions. Most of the widely used servers support JMX to allow administrators to configure and monitor the system. My project is to implement a JMX interface for Axis2, which enables administrators to configure Axis2 registry from this JMX interface. This involves writing MBeans that wraps the Axis2 configuration. These MBeans can be controlled via JMX services. As these MBeans should be able to control most of the behavior of Axis2, they have to be coupled with the internals of Axis2. After implementing the MBeans and coupling them with required sections of Axis2 engine, remote management applications can connect to the JMX agent and access the configuration of Axis2. This can be done using many protocols including HTTP, RMI and SNMP.

Project Plan

The Tomcat's MBeanServer is used for registering the Axis2 MBeans. Axis2 MBeans are registered under the "Axis2" domain to avoid confliction. Whether to create a seperate MBeanServer for Axis2 is yet to be decided. The plan is to create MBeans which access ConfigurationContext and provide an interface to monitor and alter the behaviour of Axis2 through that. Currently standard MBeans are used as the interface is not going to change at run time. But the possibility of using org.apache.commons.modeler package to create model MBeans is considered.

Project Schedule


I am an undergraduate student at University of Moratuwa, Sri Lanka. I am in the Computer Science and Engineering department of the Engineering faculty of the University. I am currently in my 3rd year of my 4 year engineering degree. I have done many software projects in the university and in the school. I have developed an online recruitment system for a Swedish based software company in Sri Lanka as my 3rd year project. I am currently working on a J2ME mobile application project with 4 of my colleagues. It is a java based automated cab hiring system where users can query and hire cabs using a J2ME application running on their mobile phones. Server side of this system is done using J2EE technology where the access to the system is provided via java web services deployed on Axis engine. I have developed a simulation software to simulate the motion of waves as my advanced level project in school. My interested areas are web services / distributed systems, operating systems, web / application servers and software architecture. I have experience in using many open source products by Apache including Tomcat, Axis1.1, Axis2.


SummerOfCode/2005/JMXFront (last edited 2009-09-20 22:48:23 by localhost)