Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > вызов Bpel в отдельном Thread из Backing Bean'а


Автор: vogdb 23.1.2010, 19:31
   Здравствуйте!
Внезапно столкнулся с проблемой, которую не могу сам решить.
Имеется Backing Bean, в котором происходит вызов bpel процесса в качестве веб-сервиса
Проблема заключается в том, что выход из bpel происходит по окончанию первого процесса в его последовательности.
Результат возвращается, но он пуст, так как над его заполнением все еще работает второй процесс из bpel.
В качестве результата используется файл, если это важно.

Код

public class SomeServiceProcess implements ServiceProcess{

    public void run() {
        try {
            SomeService service = new SomeService();
            SomePortType port = service.getSomePort();
            SomeInput inputPart = new SomeInput();
            inputPart.setSomeSource("someFile.txt");
            SomeOutput result = port.SomeOperation(inputPart);
            System.out.println("Result = "+result);
        } catch (Exception ex) {
           
        }
    }
}

....
    public void start(final ServiceProcess service, final BeanUI beanUI) {
            serviceThread = new Thread(new Runnable() {

                public void run() {
                    if(beanUI != null)
                        beanUI.activate();
                    service.run();
                    if(beanUI != null)
                        beanUI.deactivate();
                }
            });
            serviceThread.start();
        }
    }
.....



Буду благодарен за любую помощь, даже ссылке на нормальный форум посвященный bpel процессам, дабы озадачить всех там, или простому решению через Thread, если это возможно.

Используемые вещи в моей задаче:
Glassfish 2.1; Icefaces; Netbeans 6.7.1; 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)