scala 米洛OPC UA UaException:status=Bad_UnexpectedError

62lalag4  于 2023-04-06  发布在  Scala
关注(0)|答案(1)|浏览(223)

我试图从一个FolderType调用一个方法“Multiply”,它有一个方法“Multiply”,然后乘以例如2 * 5,并得到结果。
但是我在执行程序时得到以下错误消息:
用户异常:状态=坏的意外错误,消息=java.util.并发。执行异常:org.eclipse.米洛.opcua.stack.core.UaSerializationException:未知的内置类型:-1
我完全不知道为什么。
这是我的密码

val loadedConfig   : Config        = ConfigFactory.parseFile ( new File ( path ) )
val namespaceIndex : Int           = loadedConfig.getInt ( "namespaceIndex" )
val nodeID         : String        = loadedConfig.getString ( "nodeId" )
val readMethodId   : QualifiedName = new QualifiedName ( QualifiedNameIndex, Read )
val Read           : String        = loadedConfig.getString ( "readMethodId" )

val client : Option [ OpcUaClient ] = new OpcConnector ( config = loadedConfig ).createOpcClients ( )

read ( nodeId = nodeId,
       readMethodId = readMethodId,
       multiply = 5 )

private def read ( nodeId : NodeId, readMethodId : QualifiedName, multiply : Int ) : Unit = {

  val method : UaMethod = client
    .get
    .getAddressSpace.getObjectNode ( nodeId )
    .getMethod ( readMethodId )

  val inputs : Array [ Variant ] = Array ( new Variant ( multiply , 2 ) )

  val outputs : AnyRef = method.call ( inputs ) 

  println ( "result: " + outputs )
}

OPC地址和节点均正确。
米洛OPC 0.6.8

bnl4lu3b

bnl4lu3b1#

val inputs : Array [ Variant ] = Array ( new Variant ( multiply , 2 ) )
这一行应该做什么?没有接受2个参数的Variant构造函数。

相关问题