NotesSession

NickProstoNick

NickProstoNick

Статус как статус :)
Lotus team
22.08.2008
1 827
21
Всем привет.
Есть сервис на tomcat.
Сервис обращается в Lotus через Notes.jar.
Соответственно сессии, базы, виды и т.д. Все эти объекты статические с целью, чтоб не плодить лишние объекты и сессии.
Какое-то время все работает нормально, но через 2-3 часа сессия обрывается (что собственно логично ) и при обращении к любому объекту получаю ошибку
NotesException: Object no longer exists on server
Все логично. Увеличивать время жизни сессии на сервере не вариант.
Есть мысль пересоздать сессию при обрыве, но вот как поймать этот момент - не пойму
вот такой вариант не работает. Объект вроде как и null, но проверку не проходит
Java:
public class LotusConnection {
        private static Session session = null;

        //..............................
        if( LotusConnection.session == null ) {
            // code
        }
        //..............................
}
 
lmike

lmike

нет, пердело совершенство
Lotus team
27.08.2008
7 256
439
Все эти объекты статические с целью, чтоб не плодить лишние объекты и сессии.
такой метод работы с доминой чреват проблемами
и второй момент - зачем вовсе делать все через натив? (в части задач вполне подойдет DAS)
Не добавляет устойчивости
Улетевшая сессия инвадидирует все объекты от неё и как следствие - все статики накроются (их придется пересоздавать), т.о. "плодить объекты" - правильный путь
 
  • Нравится
Реакции: alexas1
S

swyatogor

Lotus team
24.02.2014
620
29
Код:
import lotus.domino.NotesException;
try {
//тут код для использования сессии
} catch (NotesException e) {
// если e.id = нет сессии - то както это дело обработать.. 
            System.out.println(e.id + " | " + e.text);
            e.printStackTrace();
        }
или так не прокатывает?)
 
Мы в соцсетях:  ТелеграмВконтактеДзенФейсбукТвиттерЮтуб