forum.bitel.ru
http://forum.bitel.ru/

вопрос по inetServUpdate в обработчике протокола
http://forum.bitel.ru/viewtopic.php?f=44&t=9756
Страница 1 из 1

Автор:  Cucumber [ 25 сен 2014, 01:18 ]
Заголовок сообщения:  вопрос по inetServUpdate в обработчике протокола

Добрый день.
Есть задача корректировать уже существующий сервис, меняя в нем логин и пароль. Я это делаю следующим образом:

Код:
final ServerContext context = ServerContext.get();
final InetServService servService = context.newService( InetServService.class, idModuleInet );

ArrayList optionList = new ArrayList();

servNew.setLogin("Login");
servNew.setPassword("Password");

servService.inetServUpdate( serv, optionList, false, false, 0 );


Всё это дело работает, но отрабатывает за ~30 секунд, что нереально долго.

С другой стороны, я могу делать тупо:
Код:
UPDATE inet_serv_{mid} SET login = 'Login', password = 'Password' ...

Это дело отрабатывает моментально, НО почему-то при авторизации не находится InetServ

Может есть какие-либо идеи?
- Может я что-то не так делаю в первом случае?
- Может нужно еще где-то что-то апдейтить во втором случае?

Спасибо.

Автор:  skyb [ 25 сен 2014, 07:47 ]
Заголовок сообщения:  Re: вопрос по inetServUpdate в обработчике протокола

суть в том что никто не знает что было что то сделано, кодом вы об этом сообщаете, и вот когда в базе то нет

Автор:  Cromeshnic [ 25 сен 2014, 07:59 ]
Заголовок сообщения:  Re: вопрос по inetServUpdate в обработчике протокола

Во-первых, вместо
Код:
context.newService( InetServService.class, idModuleInet );

нужно делать

Код:
context.getService( InetServService.class, idModuleInet);


Во-вторых, первый кусок кода где происходит?
Нужно по-хорошему делать получение контекста и сервиса в init(), писать его в поле класса, а потом уже везде использовать.

Автор:  Cromeshnic [ 25 сен 2014, 08:14 ]
Заголовок сообщения:  Re: вопрос по inetServUpdate в обработчике протокола

Cucumber писал(а):
С другой стороны, я могу делать тупо:
Код:
UPDATE inet_serv_{mid} SET login = 'Login', password = 'Password' ...

Это дело отрабатывает моментально, НО почему-то при авторизации не находится InetServ

Может есть какие-либо идеи?
- Может я что-то не так делаю в первом случае?
- Может нужно еще где-то что-то апдейтить во втором случае?

Спасибо.

Лучше не надо так делать. Когда делаешь через API, вызываются всякие синхронизации кэшей, события на изменение и т.п.

Автор:  stark [ 26 сен 2014, 14:28 ]
Заголовок сообщения:  Re: вопрос по inetServUpdate в обработчике протокола

Cucumber писал(а):
Всё это дело работает, но отрабатывает за ~30 секунд, что нереально долго.


А если вручную из договора, то тоже так долго ? Никаких ошибок в логах нет ? Как-то долго, надо бы разобраться.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/