0

I have built and deployed a war file in websphere 8.5 server. All axis 1.4 related jars are placed in WEB-INF/lib folder. However when I run the application and try to access the code that calls the webservice I get below error. Same war file works fine in TOMCAT 7 server. I do see that axis.jar exist and contains axisfault.class. Please help.

Caused by: java.lang.NoClassDefFoundError: org.apache.axis.AxisFault
    at java.lang.J9VMInternals.verifyImpl(Native Method)
    at java.lang.J9VMInternals.verify(J9VMInternals.java:93)
    at java.lang.J9VMInternals.initialize(J9VMInternals.java:170)
    at java.lang.Class.forNameImpl(Native Method)
    at java.lang.Class.forName(Class.java:179)
    at org.uddi4j.transport.TransportFactory.getTransport(TransportFactory.java:61)
    at org.uddi4j.client.UDDIProxy.send(UDDIProxy.java:1940)
    at org.uddi4j.client.UDDIProxy.find_service(UDDIProxy.java:888)
    at bofasecurity.UDDIHelper.getEndPoint(UDDIHelper.java:70)
    at bofasecurity.xxxxSecurityWrapper.buildBofASecurityWrapper(BofASecurityWrapper.java:273)
    at bofasecurity.xxxxSecurityWrapper.<init>(BofASecurityWrapper.java:212)
    at bofasecurity.xxxxSecurityWrapper$Builder.build(BofASecurityWrapper.java:179)
    at com.ml.grci.service.impl.SearchACCLServiceImpl.buildSecWrapper(SearchACCLServiceImpl.java:721)
    at com.ml.grci.service.impl.SearchACCLServiceImpl.searchACCL(SearchACCLServiceImpl.java:160)
    at com.ml.grci.webapp.action.ACCLSearchAction.execute(ACCLSearchAction.java:233)
    ... 83 more
Caused by: java.lang.ClassNotFoundException: org.apache.axis.AxisFault
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:650)
Santo
  • 362
  • 1
  • 4
  • 18

1 Answers1

3

This is likely due to a classloader issue. WebSphere 8.5 loads axis.jar (see /deploytool/itp/plugins/org.apache.axis_1.4.0.v201005080400/lib). Would recommend either removing the conflicting jar or changing the class loader policy (PARENT LAST). See how to set java class loader PARENT_LAST

Also not sure if this would help, but if you're trying to do web services using a third party framework there's a very good article on how to do this: http://www.ibm.com/developerworks/websphere/library/techarticles/1001_thaker/1001_thaker.html

Community
  • 1
  • 1
dennypc
  • 161
  • 3
  • Thanks! Yes, it was jar file conflict and got it working with parent last. But finally I ended up coding it to use the AXIS jars that were available on the WAS 8.5. – Santo Jun 25 '14 at 02:01