Domanda

È possibile chiamare un'API COM da Java (in particolare l'API OTA HP / Mercury Quality Center)? In tal caso, qual è il modo migliore?

Qualcosa come JACOB è appropriato?

I frammenti di codice sarebbero utili per le basi :-)

È stato utile?

Soluzione

jacob: sì, http://sourceforge.net/projects/jacob-project/ è un progetto attivo che si adatta abbastanza bene al tuo scopo.

puoi vedere più esempi: http: //jacob-project.wiki.sourceforge. net / evento + richiamate

ma se vuoi qualcosa che è più testato e sei disposto a pagare, allora vai a http://www.nevaobject.com/_docs/_java2com/java2com.htm .

Altri suggerimenti

Ho trovato utile anche questo: com4j

Puoi usare Jawin > http://jawinproject.sourceforge.net/

o prova le istruzioni http://docs.rinet.ru/ZhPP/ch20.htm

Arun K.Y arunky

forse dovresti dare un'occhiata a http://qctools4j.sourceforge.net/ è una libreria java utilizzata da qclylyn (http://sourceforge.net/apps/mediawiki/qcmylyn/index.php?title=Main_Page) per recuperare i difetti dal controllo qualità.

sfortunatamente il bridge COM non funziona per linux in quanto carica jacob dlls

dopo un confronto di quanto sopra, nessuno è stato del tutto soddisfacente.

è presente la soluzione più completa https://github.com/java-native-access/jna

ora.

Supporta,

  • ottenere l'interfaccia con un oggetto COM in esecuzione
  • avviare un nuovo oggetto COM e restituire la sua interfaccia
  • chiamando i metodi COM e restituendo risultati
  • gestione thread COM separata opzionale
  • ComEventCallbacks
  • RunninObjectTable query
  • uso COM di basso livello
  • util / astrazione proxy java di alto livello

per es.

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 è un bridge Java-COM: j-Interop . È scritto in puro Java e concesso in licenza con LGPL v3. Utilizza il protocollo wire DCOM per chiamare oggetti COM in contrapposizione all'approccio JNI utilizzato da JACOB.

Puoi usare lo strumento Ja-Integra COM2JAVA . Lo strumento com2java genera Java "proxy" classi e interfacce che corrispondono ai bicchieri e alle interfacce contenute in una libreria di tipi COM. Genera in modo efficace un'API Java che è possibile utilizzare per accedere a un componente COM da Java.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top