NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: enp on November 12, 2012, 09:43:03 AM

Title: Изменить комментарий объекта через Java API
Post by: enp on November 12, 2012, 09:43:03 AM
Здравствуйте!

Пытаюсь изменить комментарий объекта через Java API (использую Groovy):


NXCSession session = new NXCSession("server", "login", "password")
session.connect()

data = new NXCObjectModificationData(2081)
data.description = "ABC"
session.modifyObject(data)

session.disconnect()


Комментарий не изменяется. Что я делаю неправильно?
Title: Re: Изменить комментарий объекта через Java API
Post by: Victor Kirhenshtein on November 12, 2012, 11:29:45 AM
Вообще-то поля NXCObjectModificationData напрямую изменять нельзя. Они все обьявлены как private, я так понимаю что Groovy это просто игнорирует (а зря!). Что касается комментариев, то это исключение (так исторически сложилось), и через modifyObject поменять их нельзя. Правильный код для изменения комментария:



NXCSession session = new NXCSession("server", "login", "password");
session.connect();

session.updateObjectComments(2081, "ABC");

session.disconnect()

Title: Re: Изменить комментарий объекта через Java API
Post by: enp on November 12, 2012, 12:05:41 PM
Quote from: Victor Kirhenshtein on November 12, 2012, 11:29:45 AM
Вообще-то поля NXCObjectModificationData напрямую изменять нельзя. Они все обьявлены как private, я так понимаю что Groovy это просто игнорирует (а зря!).

Нет, Groovy вызывает set-метод :)

Quote from: Victor Kirhenshtein on November 12, 2012, 11:29:45 AM
Что касается комментариев, то это исключение (так исторически сложилось), и через modifyObject поменять их нельзя. Правильный код для изменения комментария ...

Спасибо!