我最近开始在桌面上用CMneneneba API编写一个测试客户端。在尝试检索提供者时,它抛出以下异常:
代码行:
StpProvider provider=(StpProvider)ProviderFactory.createProvider(CcProvider.provider_CLASS,回调);
PROVIDER_CLASS是"com.ibm.rational.stp.client.internal.core.StpProviderImpl"
异常:
CRVAP00055E(内部错误):尝试实例化域子提供程序"com.ibm.rational.stp.client.internal.cq.CqJniSubprovider"时引发异常。有关详细信息,请参见嵌套异常。…CRVAP0049E(内部错误):无法实例化协议提供程序:cqjniproxy(在java.library.path中找不到)…java.lang.reflect.InvocationTargetException:位于com.ibm.rational.stp.cs.internal.util.StpExceptionImpl.realException(StpExceptionImpl.java:493)网址:com.ibm.rational.stp.cs.internal.util.StpExceptionImpl.(StpExceptionImpl.java:572)网址:com.ibm.rational.stp.cs.internal.util.StpExceptionImpl.(StpExceptionImpl.java:538)网址:com.ibm.rational.stp.client.internal.core.CoreProvider.(CoreProvider.java:2879)网址:com.ibm.rational.stp.client.internal.core.CoreProvider.(CoreProvider.java:2772)网址:com.ibm.rational.stp.client.internal.core.StpProviderImpl.(StpProviderImpl.java:36)网址:com.ibm.rational.stp.client.internal.core.StpProviderImpl.(StpProviderImpl.java:45)在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:56)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessor Impl.java:39)位于java.lang.reflect.Constructure.newInstance(Constructor.java:527)位于javax.wvcm.ProviderFactory.createProvider(ProviderFactory.java:93)网址:web.mrs.cmapi.Main.getCCProvider(Main.java:53)网址:web.mrs.cmapi.Main.Main(Main.java:31)
我在IBM网站上发现了一些页面,其中提到如果任何其他资源(如BIRT或CQ报告服务器)已经使用CM API提供程序,那么我会得到这个异常,但由于我目前正在桌面上测试它,没有这样的实例在运行(除非我缺少什么)。
以下链接包含以下信息:
https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014430264
http://www-01.ibm.com/support/docview.wss?uid=swg21577252
我们目前安装的clearcase/Clearquest版本是8.0.0.10
我真的很感谢任何人能提供的所有帮助,因为这将非常有助于解决我们目前在命令提示符下使用cleartool所面临的几个问题。
您提到的技术状态为:
CRVAP0049E无法实例化协议提供程序:cqjniproxy(在java.library.path中找不到)
当两个不同的web应用程序试图使用变更管理(CM)API 的JNI适配器访问ClearQuest时,会发生此错误
例如,如果用于Crystal Reports的BIRT和ClearQuest Report Server都部署到同一个web服务器,则只有其中一个服务器应用程序可以运行使用Change Management API JNI数据源的报告(在概要文件重新启动之前先连接的)。
在您的情况下,您可能需要安装ClearQuest适配器和ClearQuest客户端库,就像在这个线程中一样:;创建Rational ClearQuest和Rational RequisitePro共享库";
也许ClearTeam服务器中有一个选项可以指定您根本不使用(也不需要)ClearQuest。
正如OP Karteek Dasari在下面评论的那样:
根本原因是需要为Clearcase客户端安装额外的"CCRC WAN服务器",该服务器提供了提供程序实例化所需的额外jar
此外,提供者类将是NETWORK_PROVIDER_CLASS
。
参见:
- "安装CCRC WAN服务器"
- "如何使用Rational ClearCase CM API"访问web、动态或快照视图:
ClearCase 8:CCRC视图
ProviderFactory.createProvider(CcProvider.NETWORK_PROVIDER_CLASS , callback);
ClearCase 8:动态视图
ProviderFactory.createProvider(CcProvider.LOCAL_PROVIDER_CLASS , callback);