M
motogarri
Привет.
Крашится нотес при обращении к notes-объекту, переданному из основного потока в дочерний
Принты принтуют, а на строке doc.getItemValueString("Number"); клиент нотеса падает. Ошибок в java-консоли нет.
Если в методе call() не пользую нотес объекты, а возвращаю произвольный текст, все отрабатывает нормально.
Пробовал на разных клиентах 9 - 9.0.1 версии на джаве 1.6
Кстати, в эклипсе все работает отлично. Подключаю notes.jar и ничего не падает, потоки нормально работают с нотес-документами.
п.с. И почему-то сама java-консоль открывается с трудом. Раза с десятого.
[doublepost=1505465269,1505426556][/doublepost]Понял в чем дело. Видимо нотес-объекты не могут жить без NotesThread, а новый поток создается наследником от Thread или реализует runnable\callable.
NotesThread.sinitThread(); - решило проблему
Крашится нотес при обращении к notes-объекту, переданному из основного потока в дочерний
Java:
for(int i = 1; i <= 3; i++){
Document doc = dc.getNthDocument(i);;
Future future = executorService.submit(new Process(doc));
System.out.println(i + ": " + future.get());
}
Java:
public class Process implements Callable{
Document doc;
public Process(Document document){
System.out.println("Process constructor");
doc = document;
}
public Object call() throws Exception {
System.out.println("Process call");
return doc.getItemValueString("Number");
}
}
Принты принтуют, а на строке doc.getItemValueString("Number"); клиент нотеса падает. Ошибок в java-консоли нет.
Если в методе call() не пользую нотес объекты, а возвращаю произвольный текст, все отрабатывает нормально.
Пробовал на разных клиентах 9 - 9.0.1 версии на джаве 1.6
Кстати, в эклипсе все работает отлично. Подключаю notes.jar и ничего не падает, потоки нормально работают с нотес-документами.
п.с. И почему-то сама java-консоль открывается с трудом. Раза с десятого.
[doublepost=1505465269,1505426556][/doublepost]Понял в чем дело. Видимо нотес-объекты не могут жить без NotesThread, а новый поток создается наследником от Thread или реализует runnable\callable.
NotesThread.sinitThread(); - решило проблему