Has anyone else encountered the error below? This suddenly started happening without any changes to the IS that I am aware of. the same WSDL works without any issues on a different IS with the same version and fix level. Any help woul be greatly appreciated, I am actively researching and will post my finding if I find the root cause.
“Could not deploy consumer Web service descriptor PackageName.wsdl:nameforWSDL for handling asynchronous responses. Connectors generated for this consumer Web service descriptor can only be used for handling responses synchronously. Cause: org.apache.axiom.om.OMAbstractFactory.setMetaFactory(Lorg/apache/axiom/om/OMMetaFactory;)V.”
looks like the first IS uses some weird API (Apache Axiom) in its classpath which is not the correct version due to some class loading issues.
Can you check this?
I thought it might be a corrupt file or jar being referenced by Apache Axiom, but I have replaced all the jars and corresponding directories from a different IS on the same version and fix where WSDLs are loading correctly and it did not help. I would just try applying a newer fix or opening a ticket, but the Empower site is still down
I finally found the issue, it was a JAR that was in the static folder under an unrelated code package. The JAR loaded statically and caused the exception when trying to load any WSDL on the Integration Server.
The Integration Server package, in either the
./packages/<package>/code/jars/static/ folders depending on whether you need the JARs loaded dynamically and only available to the owning package or loaded statically at server startup and available to all packages respectively
so moving the jar one level up to the regular code/jars folder and restarting the IS should do the trick, or?
Most likely only jars, which also have a native part (like SAP JCo libs) should be loaded via the static folder of the package.
When you have jars, which need to be loaded for all packages on server startup I would suggest to put them under lib/jars/custom folder.