DOORSからJavaでデータを取得したいと考えています。私はJacobを使ってDOORSを走らせることができることを知りましたが、うまくいきません。誰でもJacobを使わなくても解決策を教えてくれますか? 誰かが私にいくつかの特定のコードを与えることができれば感謝します。Javaを使用したDOORSへのアクセス
マイコード:
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.*;
String dxlFile = "" + appDir + "\\dxl\\transferTraceInfoToDOORS.dxl";
try {
//Try and get the active instance of doors first
ComThread.InitMTA();
//ActiveXComponent runningDoors = new ActiveXComponent("DOORS.Application");
ActiveXComponent runningDoors =
ActiveXComponent.connectToActiveInstance("DOORS.Application");
if(runningDoors ==null) {
JOptionPane.showMessageDialog(null,
"This application needs an active running instance of DOORS to work,
please fire DOORS up and try again");
System.exit(0);
} else {
runningDoors.invoke("RunStr", "print(\"Testing\");
oleSetResult(\"Finished\")");
//runningDoors.invoke("RunFile", dxlFile);
System.out.println(runningDoors.getPropertyAsString("Result"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
ComThread.Release();
}
私は「まずExcel.Application」を使用すると、このコードはうまく動作しますが、私はこのメッセージを得たのでDOORSで、それがアクティブなインスタンスを検出しません:「このアプリケーションは、アクティブを必要としますDOORSのインスタンスを実行して、DOORSを起動して再試行してください。 "私を助けてください。私は解決策を見つけることができませんでした。
ありがとうございます。
dxlFileのパスは正しいと確信していますか?例外が発生するか? – reporter
実行中のDOORSのアクティブなインスタンスを検出しないという問題。だから私はこのメッセージを受け取りました: "このアプリケーションは、動作するDOORSのアクティブな実行インスタンスが必要です。DOORSを起動して再試行してください"。 –