KB Article #166608

SAP connectivity : java.lang.NoClassDefFoundError: com/sap/conn/jco/ext/DestinationDataProvider

Problem

-- SAP connection configuration
-- outbound flow (sending IDOCs to a partner)
-- getting such error :

ERROR  :20130521:11.11.25.02:procengine(procengine(transadaptenv)):com/sap/conn/jco/ext/DestinationDataProvider
ERROR  :20130521:11.11.25.02:procengine(procengine(transadaptenv)):java.lang.NoClassDefFoundError: com/sap/conn/jco/ext/DestinationDataProvider
UNKNOWN:20130521:11.11.25.02::at com.axway.adapter.jca.sap.SAPAdapter.<init>(SAPAdapter.java:205)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.sap.ALEConnection.createSAPAdapter(ALEConnection.java:48)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.sap.SAPAleAdapter.getOrCreateSAPAdapter(SAPAleAdapter.java:456)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.sap.SAPSender.initialize(SAPSender.java:86)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.runtime.SenderController.getSender(SenderController.java:88)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.runtime.SendCallback.run(SendCallback.java:61)
UNKNOWN:20130521:11.11.25.02::at java.lang.Thread.run(Unknown Source)
UNKNOWN:20130521:11.11.25.02::at com.axway.xib.runtime.AdapterCallbackThread.run(AdapterCallbackThread.java:43)
UNKNOWN:20130521:11.11.25.02::Caused by: java.lang.ClassNotFoundException: com.sap.conn.jco.ext.DestinationDataProvider
UNKNOWN:20130521:11.11.25.02::at java.net.URLClassLoader$1.run(Unknown Source)
UNKNOWN:20130521:11.11.25.02::at java.security.AccessController.doPrivileged(Native Method)
UNKNOWN:20130521:11.11.25.02::at java.net.URLClassLoader.findClass(Unknown Source)
UNKNOWN:20130521:11.11.25.02::at java.lang.ClassLoader.loadClass(Unknown Source)
UNKNOWN:20130521:11.11.25.02::at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
UNKNOWN:20130521:11.11.25.02::at java.lang.ClassLoader.loadClass(Unknown Source)
UNKNOWN:20130521:11.11.25.02::... 8 more

Resolution

SAP libraries are probably missing.

Download them from internet.

Example on Linux :

* Copy the connector library sapjco3.jar to ${CORE_LOCAL}/java/lib/ext
* Copy an additional library sapidoc3.jar to ${CORE_LOCAL}/java/lib/ext
* Copy the shared library libsapjco3.so to ${CORE_LOCAL}/load
* Add the following entry to CLASSPATH in ${CORE_LOCAL}/config/environment.dat:  ${CORE_LOCAL}/java/lib/sapjco3.jar:${CORE_LOCAL}/java/lib/sapidoc3.jar