Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java控制台Corba客户端应用程序(Windows)和Ctrl+;C抛出CORBA.COMM_故障异常_Java_Corba - Fatal编程技术网

Java控制台Corba客户端应用程序(Windows)和Ctrl+;C抛出CORBA.COMM_故障异常

Java控制台Corba客户端应用程序(Windows)和Ctrl+;C抛出CORBA.COMM_故障异常,java,corba,Java,Corba,我有一个Java控制台应用程序(Windows),当用户点击Ctrl+C时,我想优雅地关闭它。这就是为什么我使用addShutdownHook在我的工作线程上调用interrupt() 问题是当我处于CORBA操作的中间(在我的工作线程中)并且按下CTRL+C时,我得到CORBA。你知道为什么吗 这是堆栈跟踪: org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 203 completed: No at com.sun.c

我有一个Java控制台应用程序(Windows),当用户点击Ctrl+C时,我想优雅地关闭它。这就是为什么我使用addShutdownHook在我的工作线程上调用interrupt()

问题是当我处于CORBA操作的中间(在我的工作线程中)并且按下CTRL+C时,我得到CORBA。你知道为什么吗

这是堆栈跟踪:

org.omg.CORBA.COMM_FAILURE:   vmcid: SUN  minor code: 203  completed: No
        at com.sun.corba.se.impl.logging.ORBUtilSystemException.writeErrorSend(Unknown Source)
        at com.sun.corba.se.impl.logging.ORBUtilSystemException.writeErrorSend(Unknown Source)
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.writeLock(Unknown Source)
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.sendCancelRequestWithLock(Unknown Source)
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.sendCancelRequestIfFinalFragmentNotSent(Unknown Source)
        at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.endRequest(Unknown Source)
        at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.releaseReply(Unknown Source)
        at org.omg.CORBA.portable.ObjectImpl._releaseReply(Unknown Source)
        at INVS._PKICMSStub.UpdateDataInput(_PKICMSStub.java:223)
        at com.infonotary.invssignature.SignerThread.createDetachedCMS(SignerThread.java:289)
        at com.infonotary.invssignature.SignerThread.createDetachedSignature(SignerThread.java:321)
        at com.infonotary.invssignature.SignerThread.signFile(SignerThread.java:378)
        at com.infonotary.invssignature.SignerThread.signDirectory(SignerThread.java:451)
        at com.infonotary.invssignature.SignerThread.run(SignerThread.java:506)
编辑:在服务器端,错误为:

#1  0x4054c489 in omni::giopStream::CommFailure::_raise
(minor=1096024068, 
    status=CORBA::COMPLETED_NO, retry=false, 
    filename=0x405a2259 "giopStream.cc", linenumber=878, 
    message=0x405a242c "Error in network receive (start of message)", 
    strand=0x8c879b8) at giopStream.cc:581
#2  0x4054cc8c in omni::giopStream::errorOnReceive (this=0x8c533ec,
rc=-1, 
    filename=0x405a2259 "giopStream.cc", lineno=878, buf=0x8cba610, 
编辑:我在客户端控制台窗口中点击Ctrl+C


<>编辑:可能是CORBA代码正在使用睡眠操作(当发送和接收),当我对工作线程进行交互时,它抛出异常,这就是结果。

< P>如果您在CORBA调用的中间,并且关闭客户端,我希望服务器接收到一个COMCUSTORE。(或两者兼而有之)?您正在执行CTRL-C的应用程序是在服务器上还是在客户端上?