首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Eclispe在ActivateSessionRequest中处理缺失的Sever

Eclispe在ActivateSessionRequest中处理缺失的Sever
EN

Stack Overflow用户
提问于 2018-11-16 15:11:24
回答 1查看 129关注 0票数 0

我在我的项目中使用Eclipse (0.2.3)来进行OPC UA通信。OPC UA参与者是客户端(使用Eclipse编写)和服务器,它们运行在远程计算机上,不使用Milo实现。

我可以正常地将客户端连接到服务器,如果远程服务器被关闭,一旦服务器再次被访问,我就能够自动地重新连接客户机。

但是,在更新服务器软件后,客户端不能再重新连接,它会向服务器发送以下消息:

  • 创建会话请求
    • 服务器能够创建会话。

  • 激活会话请求
    • 服务器发送激活会话响应,其中缺少ServerNonce,服务结果“坏”。

这将导致客户端发送新的创建会话请求。所有这些都在一秒钟内发生多次,这使得服务器无法执行任何其他任务,然后尝试创建此会话。

Milo中是否有指定重新连接延迟的设置?或者是否有任何设置来分隔接收空ServerNonce时应该发生的事情?

服务器的响应如下:

  • 如果可以激活会话,则: OpcUa二进制协议消息类型: MSG块类型:F消息大小: 96 SecureChannelId: 1599759116安全令牌Id: 1安全序列号: 53安全序列号:3 OpcUa服务:可编码对象TypeId : ExpandedNodeId NodeId EncodingMask: 4字节编码数字(0x01) NodeId名称空间索引:0 NodeId标识符数字: ActivateSessionResponse (470) ActivateSessionResponse ResponseHeader: ResponseHeader时间戳:11月16日,2018年14:05:47.974000000 RequestHandle: 1 ServiceResult: 0x00000000好ServiceDiagnostics: DiagnosticInfo EncodingMask: 0x00 ....0 =有符号id: False ...0。=有名称空间: False ..0..=具有本地化文本: False .0..=有地区:假...0 .=有附加信息: False ..0。……=具有内部状态代码: False .0.……=具有内部诊断信息: False StringTable: ArraySize: 0数组AdditionalHeader: ExtensionObject TypeId: ExpandedNodeId EncodingMask: 0x00 ServerNonce: ab.结果: StatusCode数组ArraySize: 0 DiagnosticInfos:数组DiagnosticInfo ArraySize: 0
  • 如果会话无法激活(在更新服务器软件之后): OpcUa二进制协议消息类型: MSG块类型:F消息大小: 64 SecureChannelId: 1599759041安全令牌Id: 1安全序列号: 61安全序列号: 11 OpcUa服务:可编码对象TypeId : ExpandedNodeId ActivateSessionResponse ResponseHeader: ResponseHeader时间戳:11月16日2018年12:49:08.235000000 RequestHandle: 222号ServiceResult: 0x80000000坏ServiceDiagnostics: DiagnosticInfo EncodingMask: 0x00 ....0 =有符号id: False ...0。=有名称空间: False ..0..=具有本地化文本: False .0..=有地区:假...0 .=有附加信息: False ..0。……=具有内部状态代码: False .0.……=具有内部诊断信息: False StringTable:数组字符串ArraySize: 0 AdditionalHeader: ExtensionObject TypeId: ExpandedNodeId EncodingMask: 0x00 ServerNonce: OpcUa Null ByteString结果:数组StatusCode ArraySize: 0 DiagnosticInfos:数组of DiagnosticInfo ArraySize: 0

提前谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-16 18:30:51

您所描述的在失败的重新激活与随后的重新创建之间没有延迟的情况在dev/0.3分支中此承诺中得到了解决。

如果我有空余时间的话,我可能会在下周把它搬到0.2.x

我不认为有什么办法可以解决。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53340514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档