WebMethods IS8.2 and Axis2 based custom web service consumer


Has anyone tried to use Axis2 with webmethods? I have a custom built ws consumer that I wish to use but whenever I try to execute the service an exception is being thrown that says:
java.lang.NoSuchMethodError: org.apache.axiom.om.OMFactory.getMetaFactory()
I have all the required jar under the /packages/{package_name}/code/jars folder. The exact verion i’m trying to use is axis2-1.6.2. The jars I have provided are the following:

  • axis2-adb-1.6.2.jar
  • axis2-kernel-1.6.2.jar
  • axis2-transport-local-1.6.2.jar
  • axis2-transport-http-1.6.2.jar
  • axiom-api-1.2.13.jar
  • axiom-impl-1.2.13.jar
  • commons-codec-1.3.jar
  • commons-logging-1.1.1.jar
  • commons-httpclient-3.1.jar
  • apache-mime4j-core-0.7.2.jar
  • mail-1.4.jar
  • neethi-3.0.2.jar
  • httpcore-4.0.jar
  • wsdl4j-1.6.2.jar
  • XmlSchema-1.4.7.jar

Thanks for every help, and Best Regards,
Jozsef, Horvath

To whoever comes into the same sutiation. To integrate Axis2 under WebMethods8.2 IS make sure to follow these steppes:

  1. Copy jar files under packages/{package_name}/code/jars folder.
  2. Modify the manifest.v3 file under packages/{package_name} folder, and add the following entry: package
  3. Reload the package.
    ISSUE so far: Designer just won’t pick up these jar files making intellisense unusable and the editor will give you lots and lots of red underlines. Compilation and runtime is not affected.
  4. To actually solve the error message in my opening question you have to manually add the ClassLoader because WebMethods won’t take in consideration that the axis has these options within axis.xml in META-INF. So make a java service and update the System.properties as follows: System.setProperty(“org.apache.axiom.om.OMMetaFactory”, “org.apache.axiom.om.impl.llom.factory.OMLinkedListMetaFactory”);

After this point everything should work fine.

1 Like