Ist es möglich, eine COM API von Java zu nennen?
-
02-07-2019 - |
Frage
Ist es möglich, eine COM API von Java (speziell der HP / Mercury Quality Center OTA API) zu nennen? Wenn ja, was ist der beste Weg?
Ist so etwas wie JACOB angemessen?
Code-Fragmente wären hilfreich für die Grundlagen: -)
Lösung
jacob: ja, http://sourceforge.net/projects/jacob-project/ ist ein aktives Projekt, das Ihren Zweck ziemlich gut Hotel wird.
können Sie mehrere Beispiele finden Sie unter: http: //jacob-project.wiki.sourceforge. net / Event + Rückrufe
, aber wenn Sie wollen etwas, das mehr getestet und sind bereit, Geld zu zahlen, dann gehen Sie für http://www.nevaobject.com/_docs/_java2com/java2com.htm .
Andere Tipps
Ich habe auch festgestellt, dies nützlich zu sein: com4j
Sie können mit Jawin> http://jawinproject.sourceforge.net/
oder versuchen Sie den Anweisungen http://docs.rinet.ru/ZhPP/ch20.htm
Arun K.Y arunky
Vielleicht sollten Sie einen Blick auf http://qctools4j.sourceforge.net/ es ist eine Java-Bibliothek von qclylyn verwendet (http://sourceforge.net/apps/mediawiki/qcmylyn/index.php?title=Main_Page) auf Defekte, QC abgerufen werden.
leider die COM-Brücke funktioniert nicht für Linux, wie es jacob DLLs lädt
Nach einem Vergleich aller oben, keiner war völlig zufrieden stellend.
die vollständigste Lösung ist in https://github.com/java-native-access/jna
Jetzt.
Es unterstützt,
- Erste-Schnittstelle an einen laufenden COM-Objekt
- ein neues COM-Objekt starten und die Rückkehr seiner Schnittstelle
- COM-Methoden aufrufen und welche Ergebnisse
- Sie optional ein separates COM Fadenhandhabungs
- ComEventCallbacks
- RunninObjectTable Abfragen
- lowlevel COM Verwendung
- util / hohe Java-Proxy-Abstraktion
z.
MsWordApp comObj = this.factory.createObject(MsWordApp.class);
Documents documents = comObj.getDocuments();
_Document myDocument = documents.Add();
String path = new File(".").getAbsolutePath();
myDocument.SaveAs(path + "\\abcdefg", WdSaveFormat.wdFormatPDF);
comObj.Quit();
j-Interop ist eine Java-COM-Brücke: j-Interop . Es ist in Java geschrieben und unter der LGPL v3 lizenziert. Es verwendet das DCOM-Wire-Protokoll COM-Objekte zu nennen, wie zum JNI Ansatz von JACOB verwendete gegenüber.
Sie können mit J-Integra COM2JAVA Werkzeug . Das Werkzeug erzeugt com2java Java „proxy“ Klassen und Schnittstellen, die in einer COM-Typenbibliothek enthalten ist, zu den Co-Klassen und Schnittstellen entsprechen. Es erzeugt effektiv einen Java-API, die Sie eine COM-Komponente für den Zugriff von Java verwenden können.