HTTPS服务器上的Java ClearCase更新

HTTPS服务器上的Java ClearCase更新,java,clearcase,clearcase-ucm,clearcase-remote-client,clearcase-automation,Java,Clearcase,Clearcase Ucm,Clearcase Remote Client,Clearcase Automation,我正在尝试自动化ClearCase,这样我就可以进行自动构建。第一步是通过脚本更新视图。我正在使用以下Java代码进行尝试: StpProvider provider = (StpProvider) ProviderFactory.createProvider( CcProvider.NETWORK_PROVIDER_CLASS, callback); provider.setServerUrl("https://...&

我正在尝试自动化ClearCase,这样我就可以进行自动构建。第一步是通过脚本更新视图。我正在使用以下Java代码进行尝试:

        StpProvider provider = (StpProvider) ProviderFactory.createProvider(
                CcProvider.NETWORK_PROVIDER_CLASS, callback);
        provider.setServerUrl("https://...");
        CcProvider m_provider = provider.ccProvider();
        m_provider.registerTrustManagerCallback(callback);
        File viewRoot = new File("D:\\Views\\...");
        StpLocation viewLocation = provider.filePathLocation(StpProvider.Domain.CLEAR_CASE, viewRoot);
        
        //Get instance of CcView that represents the CCRC view.
        CcView view = m_provider.ccView(viewLocation);
        
        //Options while updating view
        CcFile.RefreshFlag[] refreshFlags = new CcFile.RefreshFlag[1];
        refreshFlags[0] = CcFile.RefreshFlag.KEEP_HIJACKS;
        
        PropertyRequestItem.PropertyRequest properties = new PropertyRequestItem.PropertyRequest(CcView.DISPLAY_NAME, CcView.CONFIG_SPEC);
        
        view.doRefresh(refreshFlags, properties);
MyCallback只是Callback和CcTrustManagerCallback的一个简单实现,没有额外的逻辑。我得到以下错误:

Exception in thread "main" CcException: CRMAP7009: Der Befehl "Update" ist fehlgeschlagen: 

CCRC WAN Server: Error: Unable to get view handle.
Fehler: "java.io.IOException: Status(1001:hasNonOkMsg): 

CCRC WAN Server: Error: Unable to get view handle.
" 
   reason:   conflict
   resource: view: cc.file:D:/Views/...
    at com.ibm.rational.stp.client.internal.cc.Util.ccrcCmdStatusToWvcmException(Util.java:296)
    at com.ibm.rational.stp.client.internal.cc.Util.runCommandAndCheckResults(Util.java:160)
    at com.ibm.rational.stp.client.internal.cc.WebViewRefresh.run(WebViewRefresh.java:233)
    at com.ibm.rational.stp.client.internal.cc.CcFileImpl.doCcRefresh(CcFileImpl.java:392)
    at com.ibm.rational.stp.client.internal.cc.CcFileImpl.doRefresh(CcFileImpl.java:381)
    at cc.UpdateView.main(UpdateView.java:45)

有人知道如何解决这一冲突吗?ClearTeam Explorer正在工作,我正在通过Eclipse插件手动更新。ClearCase版本9.0.1.4和ClearTeam Explorer版本:9.0.1.08。使用Java 8。

终于解决了问题,感谢@Abra的回复。但问题只是我必须将PRIMARY_组设置为正确的组


如果您有这样的错误,首先检查ClearTeamExplorer或普通ClearCase的CC操作是否有效,然后检查它是如何配置的,并确保CLI具有相同的设置。

一位知识渊博且可靠的消息来源告诉我,不应使用ClearCase java API。另外,根据个人经验,Eclipse、ClearCase插件不能很好地工作,我只是使用ClearCase浏览器来执行签出和签入。我建议编写一个脚本文件,即UNIX/linux的shell脚本或Windows的批处理文件,其中包含
cleartool
命令,如