0

我试图在 Win7 上的 Eclipse 中使用 com4j 库连接到 hp qc 版本 10.00

我按照以下步骤操作:

  • 使用 tlbimp.jar 为 OTAClient.dll 创建了包装器
  • 使用 regsvr32 注册 OTAClient.dll
  • 在程序中导入了OTAClient Wrapper。
  • 导入的 com4j 库。

使用了以下代码:

import ota.ClassFactory;
import ota.ITDConnection;

public class comqc {

    public static void main(String args[]){

        ITDConnection td = ClassFactory.createTDConnection();   
        td.initConnectionEx("https://qcbt10.saas.hp.com/qcbin/start_a.htm");
        System.out.println(td.connected()); 
        td.connectProjectEx(domain, project, username, password);             
        }
}

得到以下输出:

true
Exception in thread "main" com4j.ComException: 80000482 (Unknown error) : Invalid server response : .\invoke.cpp:517
at com4j.Wrapper.invoke(Wrapper.java:166)
at $Proxy5.connectProjectEx(Unknown Source)
at qctools.main(qctools.java:15)
Caused by: com4j.ComException: 80000482 (Unknown error) : Invalid server response : .\invoke.cpp:517
at com4j.Native.invoke(Native Method)
at com4j.StandardComMethod.invoke(StandardComMethod.java:42)
at com4j.Wrapper$InvocationThunk.call(Wrapper.java:335)
at com4j.Task.invoke(Task.java:51)
at com4j.ComThread.run0(ComThread.java:153)
at com4j.ComThread.run(ComThread.java:134)

出了什么问题?

4

2 回答 2

1

尝试https://qcbt10.saas.hp.com/qcbin作为连接目标。

OTA参考(OTA_API_Reference.chm)中有很多例子;虽然是用 Basic 编写的,但它们应该很容易翻译成 Java。

于 2013-07-30T08:22:48.213 回答
0

我做错的第一件事是 URL,我使用的是
https://qcbt10.saas.hp.com/qcbin/start_a.htm ”,而我必须使用
https://qcbt10.saas.hp.com /qcbin " 就像上面的答案一样!但在这样做之后,程序运行了!但是 JRE 在运行时崩溃并显示消息“Java(TM) Platform SE 二进制文件已停止工作”。这已通过在我的程序中使用“BugFactory”解决!我不知道它是如何工作的以及为什么它没有更早地工作,但只要我在我的任何陈述中使用 BugFactory,崩溃就停止了!例如,

IBugFactory bugfactory = td.bugFactory().queryInterface(IBugFactory.class);

这个声明成功了!仍然通过使用正确的 URL 解决了实际问题。

于 2013-08-06T13:56:35.657 回答