powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Запуск таймера из-под Веб-Сервиса
15 сообщений из 15, страница 1 из 1
Запуск таймера из-под Веб-Сервиса
    #37965461
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача: есть приложение под WAS, в нем таймер. Задача: сделать на этом приложении веб-сервис по вкл/выкл таймера, чтобы можно было управлять таймером извне.

Таймер реализован вот так:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
@Stateless
public class AskPack implements AskPackLocal {
   @Resource private SessionContext sessionContext;
  public void startMe()
  {
    try
    {
      TimerService timerService = sessionContext.getTimerService();



Когда я вызываю это из тестового сервлета, все ОК:

Код: java
1.
2.
3.
  @EJB AskPackLocal askPack;
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  askPack.startMe();



Однако при попытки вызвать то же самое из-под имплементации веб-сервиса

Код: java
1.
2.
3.
4.
public class AdmSOAPImpl implements org.example.www.Adm.Adm_PortType{
@EJB AskPackLocal askPack;
 public String control(String command,String name,String param) throws java.rmi.RemoteException {
  askPack.startMe();



...ругается, говорит что askPack -- NullPointer. И если даже сделать askPack=new AskPack(), то уже внутри него ругается что sessionContext -- null
Подскажите плз, как это можно победить и куда вообще смотреть?

Заранее спасибо
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965710
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю как это сделать в ejb, и чем вам не подходит кварц) Но как вариант если не решите проблему - можно тупо писать в базу какой нибудь флаг, а в таймере проверять установлен ли он в начале кода таймера, ну дальше поймете)
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965787
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tyo,

Не надо на сервере таймер использовать, а тем более, им управлять с клиента.
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965859
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tyo,

За injection в сервлеты отвечает web контейнер. А кто делает injection в произвольный класс? Ответ - никто. Поэтому нужно самому делать lookup и получать EJB из JNDI.
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965924
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeНе надо на сервере таймер использоватьпочему это?
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965939
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.netShSergeНе надо на сервере таймер использоватьпочему это?
Моё скромное имхо мне подсказывает, что сервер - та штука, которая чисто конкретно отвечает на запросы клиента, больше ничего.
Таймер на клиенте - вполне нормально, но на сервере???
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37965948
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0За injection в сервлеты отвечает web контейнер. А кто делает injection в произвольный класс? Ответ - никто. Поэтому нужно самому делать lookup и получать EJB из JNDI.
+1, либо определять веб сервис на основе бина управляемого EJB-контейнером (JavaEE 6 поддерживает JAX-WS, прилепите к SLSB аннотацию @WebService и вуаля)
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966040
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergegrasoff.netпропущено...
почему это?
Моё скромное имхо мне подсказывает, что сервер - та штука, которая чисто конкретно отвечает на запросы клиента, больше ничего.
Таймер на клиенте - вполне нормально, но на сервере???ясненько
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966055
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeМоё скромное имхо мне подсказывает, что сервер - та штука, которая чисто конкретно отвечает на запросы клиента, больше ничего.

Сервер это ПО обслуживающее клиентские запросы. Но это не значит что если ПО является сервером, оно больше ничего не должно делать.
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966417
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeTyo,

Не надо на сервере таймер использовать, а тем более, им управлять с клиента.

Как это "не надо", коллеги? У меня сервер WAS, на нем все и крутится. По таймеру опрашиваются файловые ресурсы и MQ-очереди (через ActSpec не получается, потому что перечень очередей может меняться)
А клиент у меня, извините, ИнетЭксплорер, какой зачем мне там таймер?
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966419
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0Tyo,

За injection в сервлеты отвечает web контейнер. А кто делает injection в произвольный класс? Ответ - никто. Поэтому нужно самому делать lookup и получать EJB из JNDI.

Спасибо, раскрыли мне глаза. Действительно ведь...
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966433
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TyoShSergeTyo,

Не надо на сервере таймер использовать, а тем более, им управлять с клиента.

Как это "не надо", коллеги? У меня сервер WAS, на нем все и крутится. По таймеру опрашиваются файловые ресурсы и MQ-очереди (через ActSpec не получается, потому что перечень очередей может меняться)
А клиент у меня, извините, ИнетЭксплорер, какой зачем мне там таймер?
Как я понял, Вам и таймер нафиг не нужен, если ВАС - это вебсфере.
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966467
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeTyoпропущено...


Как это "не надо", коллеги? У меня сервер WAS, на нем все и крутится. По таймеру опрашиваются файловые ресурсы и MQ-очереди (через ActSpec не получается, потому что перечень очередей может меняться)
А клиент у меня, извините, ИнетЭксплорер, какой зачем мне там таймер?
Как я понял, Вам и таймер нафиг не нужен, если ВАС - это вебсфере.ты смешной такой чото )) реально ))
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37966484
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.net,

Чё-то не то сказал? Пардон, я уже подшафе.
...
Рейтинг: 0 / 0
Запуск таймера из-под Веб-Сервиса
    #37967860
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeTyoпропущено...


Как это "не надо", коллеги? У меня сервер WAS, на нем все и крутится. По таймеру опрашиваются файловые ресурсы и MQ-очереди (через ActSpec не получается, потому что перечень очередей может меняться)
А клиент у меня, извините, ИнетЭксплорер, какой зачем мне там таймер?
Как я понял, Вам и таймер нафиг не нужен, если ВАС - это вебсфере.

ВАС -- это, канешна, Вебсфере. Но таймер все-таки нужен))
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Запуск таймера из-под Веб-Сервиса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]