# Problem bei Einbinden einer DLL in Java-Projekt



## KevinBarz (18. Dez 2017)

Hallo,

mein erster Beitrag und schon ein Riesen-Klopper. Ich hoffe ihr verzeiht mir ^^

Ich arbeite momentan an einem Web-basierten Projekt und ich soll anhand einer vorgefertigten DLL Zugriff auf ein anderes System erlangen und dort mit bestimmten Funktionen Felder abrufen.
Diese DLL ist in .Net geschrieben und beinhaltet viele verschiedene Klassen, Subklassen und Methoden

Ich möchte aber von Java aus darauf zugreifen. Ich habe schon Ansätze über jni4net und jna probiert, aber komme nirgendwo weiter. Bei jni4net kommt die Meldung "Object reference not set to an instance of an object“, was höchstwahrscheinlich daran liegt, dass der Ersteller der DLL generische Typen verwendet hat.

Und bei jna kommt immer die Meldung "java.lang.UnsatisfiedLinkError: Error looking up function 'CreateSapProxy': Die angegebene Prozedur wurde nicht gefunden".

Kann man mir grob erklären oder Beispiele nennen, wie man so ein Problem angehen kann. Ich weiß so gut wie nichts über die DLL leider, ich habe nur eine Hilfe mit den Methoden und Klassen.

Hoffe jemand kann helfen, bei Fragen kann ich gerne noch weitere Infos angeben.

Gruß

Kevin


----------



## olfibits (1. Jan 2018)

Hallo!
Nach meinen Recherchen funktioniert es nicht besonders gut, C#/.NET-DLLs in Java zu verwenden.
Ich habe allerdings das hier gefunden: https://github.com/jni4net/jni4net/wiki/Calling-C#-in-Java das könnte vielleicht funktionieren.


----------



## KevinBarz (17. Jan 2018)

Hallo,

danke für den Link, aber wir haben jetzt einen Umweg genommen und vorerst einen Wrapper eingebaut der eine Textdatei betrachtet und dort dann über C# entsprechend die Aufrufe startet, je nachdem was reingeschrieben wird.

Anders konnten wir uns momentan nicht weiterhelfen.

Gruß

Kevin


----------



## olfibits (17. Jan 2018)

OK


----------



## Joah (6. Jun 2018)

Also ich würde an deiner Stelle eine C oder C++ JNI-Bibliothek schreiben, welche die C#-Bibliothek aufruft.
Also Java->Deine JNI-Bibliothek->C#-Bibliothek


----------

