Search code examples
servicejarapache-axis

Specific libaries of service ignored by axis2


I have an axis2 service deployed as an aar-file which contains service specific libaries. I have problems with the httpclient-4.2.jar and httpcore-4.2.jar and the error messages seems to me like not the service jars are loaded but the axis2 jars (which contains httpcore-4.0.jar).

The structure from the aar-file is like the following which should be correct:

aar
|- lib
|--|- httpclient-4.2.jar
|--|- httpcore-4.2.jar
|--|- LICENSES
|- my
|--|- services
|--|--|- *.class
|- META-INF
|--| - services.xml

Solution

  • JARS in .aar are not 100% the same context like WEB-INF/lib but also not 100% separated.
    That is the reason why we do not package libraries and logic into the .aar file.
    We put only the service.xml in the aar file. Classes are inside WEB-INF/lib JARs.
    By doing so you have the regular webapp context and your service is also able to return all object types/classes that are in the WEB-INF/lib context.

    Sebastian