Я пытался написать как String, так и LocalizedText (два основных типа данных, используемых на сервере), я не получаю ошибки, но когда я снова читаю узел через одну секунду после вызова, ничего не изменилось (и я неновые значения также не отображаются при использовании инспектора OPC) Моя функция writeOpcValue очень проста и основана на функциях, которые были предоставлены с milo:
/*Writes a String to the nodeId given as parameter*/
public void writeOpcValue(OpcUaClient client, NodeId nodeId, String value, boolean logValue)
{
//client.writeValue(nodeId, DataValue.valueOnly(new Variant(value)));
VariableNode node = client.getAddressSpace().createVariableNode(nodeId);
node.writeValue(DataValue.valueOnly(new Variant(value)));
if (logValue)
logger.info("Wrote {} to nodeId {}", value, nodeId);
}
Первая строка закомментирована, потому что я пробовал оба способа,но ничего не изменилось.Когда я использую эту функцию с моим собственным сервером примеров, она работает отлично, а на «реальном» - нет.Я что-то не так делаю или нужно что-то делать на стороне сервера?Следует отметить, что у меня нет доступа к коду сервера или пространству имен, и на самом деле он даже не написан на Java, что до сих пор не вызывало никаких проблем.Может быть, эти узлы только для чтения?В этом случае я ожидаю увидеть где-то исключение или ошибку.
Заранее благодарен за любую помощь