Я использую commonj.work.WorkManager для параллельной обработки нескольких запросов. У меня есть серия дао-классов, реализующих интерфейс, и есть реализация Work, которая выполняет методы в методе run. С этой настройкой я могу возвращать данные, как и ожидалось с рабочим API.
Я сейчас пытаюсь справиться с ошибочными ситуациями:
Исключение в дао
-запросы занимают больше времени, чем waitForAll позволяет
Я заметил, что WorkItem.getResult возвращает ноль для запросов, которые все еще обрабатываются. У меня все еще есть экземпляры для дао объектов в ArrayList, так что я могу получить параметры и настройки оттуда. Похоже, я должен быть в состоянии получить это из WorkItem, есть ли лучший способ?
Кроме того, единственный способ получить исключение - это сохранить его в классе, который реализует Work, и предоставить для него метод доступа. Опять же, я чувствую, что должен быть лучший путь.
Это работает на Websphere 6.1 без пакета функций EJB 3, WS (поэтому нет Java EE 5).