October 22, 2016
Hot Topics:

The Axis2 Information Model

  • December 19, 2008
  • By Deepal Jayasinghe
  • Send Email »
  • More Articles »


AxisOperation is the runtime description representation of an exposed Web service operation. As an example, say you have published an operation called "bar" in Web service "Foo". There should be an AxisService object called "Foo" and that service will have an AxisOperation object called "bar". The parent description of an AxisOperation is the AxisService, and any parameter defined in the parent's descriptions can be accessed inside the child, in this case, the AxisOperation. So, any parameter in AxisConfiguration, AxisServiceGroup, and AxisService can be accessed and used inside AxisOperation. I typical AxisOperation contains:

  • AxisMessages
  • Engaged modules
  • Operation name
  • Soap actions
  • WS-Policy


AxisMessage is the bottom or leaf element of the service hierarchy. Its parent is an AxisOperation. Unlike AxisService, which has a set op AxisOperations, an AxisOperation does not have a set of AxisMessages. The number of AxisMessages in an AxisOperation is based on the MEP of that particular AxisOperation. For example, if the operation is "in-out", there will be only two AxisMessages in it, one to represent the in message configuration and other to represent the out message configuration. AxisMessage has the following set of data:

  • Parameters
  • WS-Policy
  • Message Label
  • Element Qname of the corresponding schema element (optional)

Having message elements inside the operation element of the services.xml is optional. You need to add that only if you need to override the default.


In this article, I discussed the Axis2 static data hierarchy, which provides more flexibility and extensibility to Axis2. Throughout the article, you learned about various types of data in the static data hierarchy and when and how they are created. More importantly, you discovered a different kind of configuration that you can see in the Axis2 global configuration file.

About the Author

Deepal Jayasinghe is a computer science graduate student at Georgia Tech and an Apache Member. Before joining Georgia Tech, he worked at WSO2 for about three years. His interest is mainly in SOA and distributed computing, especially Web services. Deepal was a key member who designed, developed, and implemented the de-facto Java Web service framework, Axis2.

In addition to Axis2, he has contributed to a number of other open source projects, such as Apache Axiom, Apache Synapse, WSO2 Registry, WSO2, and WSAS.

Page 3 of 3

Comment and Contribute


(Maximum characters: 1200). You have characters left.



Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Sitemap | Contact Us

Thanks for your registration, follow us on our social networks to keep up-to-date
Rocket Fuel