Websphere WorkManager - PullRequest
       36

Websphere WorkManager

1 голос
/ 24 августа 2011

Я использую commonj.work.WorkManager для параллельной обработки нескольких запросов. У меня есть серия дао-классов, реализующих интерфейс, и есть реализация Work, которая выполняет методы в методе run. С этой настройкой я могу возвращать данные, как и ожидалось с рабочим API.

Я сейчас пытаюсь справиться с ошибочными ситуациями: Исключение в дао -запросы занимают больше времени, чем waitForAll позволяет

Я заметил, что WorkItem.getResult возвращает ноль для запросов, которые все еще обрабатываются. У меня все еще есть экземпляры для дао объектов в ArrayList, так что я могу получить параметры и настройки оттуда. Похоже, я должен быть в состоянии получить это из WorkItem, есть ли лучший способ?

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

Это работает на Websphere 6.1 без пакета функций EJB 3, WS (поэтому нет Java EE 5).

1 Ответ

1 голос
/ 15 августа 2012

хотя вопросу год, я хотел предоставить обновление, если кто-нибудь сталкивается с этим вопросом. мои классы, которые реализуют Work, имеют атрибут member, который будет хранить исключение. Я думал, что это будет проблемой, но на самом деле все получилось. Любое исключение, создаваемое в поточном вызове, не должно влиять на другие работающие потоки, когда вся работа завершена, я оцениваю исключения и принимаю меры в зависимости от проблемы.

...