cancel
Showing results for 
Search instead for 
Did you mean: 

java.lang.UnsatisfiedLinkError: E:\SAP\sapjco3.dll

Former Member
0 Kudos

Hi All,

I am new to SAP Netweaver.

I am trying to write a standalone java program to execute few RFMs. I am using JCO 3.0. The program works on my laptop. But when I deploy the same program to the server, the dll does not work. I get the following error.

java.lang.UnsatisfiedLinkError: E:\SAP\sapjco3.dll:

This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem

at java.lang.ClassLoader$NativeLibrary.load(Native Method)

at java.lang.ClassLoader.loadLibrary0(Unknown Source)

at java.lang.ClassLoader.loadLibrary(Unknown Source)

at java.lang.Runtime.loadLibrary0(Unknown Source)

at java.lang.System.loadLibrary(Unknown Source)

at com.sap.conn.jco.rt.DefaultJCoRuntime.loadLibrary(DefaultJCoRuntime.java:421)

at com.sap.conn.jco.rt.DefaultJCoRuntime.registerNativeMethods(DefaultJCoRuntime.java:290)

at com.sap.conn.jco.rt.JCoRuntime.registerNatives(JCoRuntime.java:862)

at com.sap.conn.rfc.driver.CpicDriver.<clinit>(CpicDriver.java:947)

at com.sap.conn.rfc.engine.DefaultRfcRuntime.getVersion(DefaultRfcRuntime.java:41)

at com.sap.conn.rfc.api.RfcApi.RfcGetVersion(RfcApi.java:213)

at com.sap.conn.jco.rt.MiddlewareJavaRfc.<clinit>(MiddlewareJavaRfc.java:186)

at com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:73)

at com.sap.conn.jco.rt.JCoRuntimeFactory.<clinit>(JCoRuntimeFactory.java:23)

at com.sap.conn.jco.rt.About.<init>(About.java:39)

at com.sap.conn.jco.rt.About.main(About.java:70)

I am not sure what reinstalling means. We just have to extract the jar and dll files and put them in classpath and path.

The server OS is Windows 2003 Server.

Am I missing something?

Thanks,

Daya

Accepted Solutions (0)

Answers (11)

Answers (11)

SURYA_ABAP
Participant
0 Kudos

I too faced the same issue.

Please follow the pre-requisites. Dont install any advanced versions.

Eclipse Platform2020-03 (4.15)Operating System

  • Windows 7/10, or
  • Apple Mac OS X 10.13 or higher

Java Runtime*JRE version 8 or 11 (64-Bit)SAP GUI

  • For Windows OS: SAP GUI for Windows 7.50
  • For Apple Mac or Linux OS: SAP GUI for Java 7.50

SAP GUI is not required to work with the SAP Cloud Platform ABAP Environment.Microsoft VC Runtime

For Windows OS: Microsoft Visual C++ 2013 (x64) for communication with the back-end system is required.

I followed the same. Now my issue resolved.

Former Member
0 Kudos

This thread is ancient but it crops up in all google searches so I thought I would post a solution anyway.

I had exactly the same problem and tried all of the above without success.  The solution in my case was to make sure the JVM and sapjco3.dll were the for the same platform.  I had the 64 bit JCO3 running with 32 bit JVM.  I changed and installed the 32 bit JCO3 version.

Go to Start>Control Panel>Java to check JVM version.

If that doesn't work try these:

1. JCO 3 problems with Library - UnsatisfiedLinkError [SOLVED] - Toolbox for IT Groups

2. https://scn.sap.com/thread/11967

3. Error: sapJco3 load the Java library

arthur_fuscella
Participant
0 Kudos

Redistributable Package worked to me too. My Windows 7 distribution is based on 64x

The link comes below:

http://www.microsoft.com/en-us/download/confirmation.aspx?id=5555

Former Member
0 Kudos

Hi all,

I had the same problem today using sapjco3.dll on a Windows XP Professional system.

For me the link didn't work but the following containing the SP1 of the C++ 2005 package did:

[http://www.microsoft.com/downloads/details.aspx?familyid=766A6AF7-EC73-40FF-B072-9112BAB119C2&displaylang=en]

Maybe this will help others, too.

Cheers,

Manfred

Former Member
0 Kudos

Stop all that we have been doing my friends...

Please follow the link http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displa...

Please download the redistribution package and install it..

You will have peace in life..

Generously donate points to all..

rgds / Kamal

Former Member
0 Kudos

Hello

To help yourself, install SAPGUI 710 on the machine where you have the problem, and the error will be disappeared.

I know, that this is not an explanation but a good medicine

bye

Michael

Former Member
0 Kudos

I got exactly the same pb but i can't seem to find a solution.

I tried to chance the version asked in the sapjco3.dll but it doesn't work.

Now i will try like you said to copy side by side the directory WinSxs but

how do I know which dll i should copy?

I don't really know how dll work and i don't want to break anything. Any hint?

Thanks

Lucie

Edited by: Lucie BABU on Oct 15, 2008 10:19 AM

Former Member
0 Kudos

Hi John,

Can you please tell, how to change the version in the manifest?

Also, did you try running some JCo code after you got rid of the error?

Thanks,

Dayanand

Former Member
0 Kudos

I get the same error with version3 (version 2 works).

I searched for the error with "Dependency Walker" and here is what I found:

LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") called from "JVM.DLL" at address 0x6D91207F.
Loaded "SAPJCO3.DLL" at address 0x10000000.  Successfully hooked module.
LDR: LdrpWalkImportDescriptor() failed to probe D:\sapjco3-ntintel-3.0.0\sapjco3.dll for its manifest, ntstatus 0xc0150002
Unloaded "SAPJCO3.DLL" at address 0x10000000.
LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") returned NULL. Error: Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren (14001).
Error: The Side-by-Side configuration information for "d:\sapjco3-ntintel-3.0.0\SAPJCO3.DLL" contains errors. Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren (14001).
LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") called from "JVM.DLL" at address 0x6D91207F.
Loaded "SAPJCO3.DLL" at address 0x10000000.  Successfully hooked module.
LDR: LdrpWalkImportDescriptor() failed to probe D:\sapjco3-ntintel-3.0.0\sapjco3.dll for its manifest, ntstatus 0xc0150002
Unloaded "SAPJCO3.DLL" at address 0x10000000.
LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") returned NULL. Error: Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren (14001).
LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") called from "JVM.DLL" at address 0x6D91207F.
Loaded "SAPJCO3.DLL" at address 0x10000000.  Successfully hooked module.
LDR: LdrpWalkImportDescriptor() failed to probe D:\sapjco3-ntintel-3.0.0\sapjco3.dll for its manifest, ntstatus 0xc0150002
Unloaded "SAPJCO3.DLL" at address 0x10000000.
LoadLibraryA("D:\sapjco3-ntintel-3.0.0\sapjco3.dll") returned NULL. Error: Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren (14001).

Is the dll broken?

"Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren" is german and is the translation of

"This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem"

Edited by: John Doe on Sep 17, 2008 6:32 PM

Former Member
0 Kudos

SOLVED:

The problem is a wrong version of "Microsoft.VC80.CRT" (msvcr80.dll) in e.g. Windows XP.

The manifest of sapjco3.dll demands version 8.0.50727.762 whereas Windows XP has only version 8.00.50727.163.

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>

Because of a newer version in Windows Vista there is no problem with sapjco3.dll in Vista.

(To test I changed the version in the manifest and then there was no java.lang.UnsatisfiedLinkError in Windows XP, too.)

Edited by: John Doe on Sep 18, 2008 3:35 PM

Former Member
0 Kudos

Hi,

I'm getting the same problem, can you help me solve this problem?

Where can I change the Manifest of sapjco3.dll?

Thanks in advance

Former Member
0 Kudos

The manifest is part of the dll.

You can edit the header with e.g. PE-Explorer (http://www.heaventools.com/) (or even any HexEditor).

After you change the minimum version everything seems to work fine (I successfully called a remote function).

A cleaner solution I did is to make a "side-by-side" (C:\WINDOWS\WinSxS) install of the newer dlls which are required.

Former Member
0 Kudos

Hi ,

I am also facing same problem. Did you get any resolution ? sapjco3.dll gives problem on XP(sp2) & win-2003(server) but workes on Win-vista(laptop)

thanks

Sanjay

Former Member
0 Kudos

Hi

You said it worked on you laptop, have you checked the authorizations for the you programs on the server , does it have the permission to execute it on the server. If it's Dev server try adding it to the sidadm group.

Regards

Kaleem