Миграция Flowscope на Glassfish 4.1
В Glassfish 4.0 у меня есть работающее приложение JSF, которое использует @flowscope. Ниже приведен пример определения потока:
package flow;
import javax.enterprise.inject.Produces;
import javax.faces.flow.Flow;
import javax.faces.flow.builder.FlowBuilder;
import javax.faces.flow.builder.FlowBuilderParameter;
import javax.faces.flow.builder.FlowDefinition;
import javax.inject.Named;
@Named("sintesitransiti")
public class SintesiTransitiFlow {
private static final long serialVersionUID = -7623501087369765218L;
@Produces @FlowDefinition
public Flow defineFlow(@FlowBuilderParameter FlowBuilder flowBuilder) {
String flowId = "sintesitransiti";
flowBuilder.id("", flowId);
flowBuilder.viewNode("sintesitransiti", "/dir1/sintesitransiti/sintesitransiti.xhtml").markAsStartNode();
flowBuilder.viewNode("SintesitransitiResult", "/dir1/sintesitransiti/List.xhtml");
flowBuilder.returnNode("taskFlowReturn1").
fromOutcome("/index.xhtml");
return flowBuilder.getFlow();
}
}
Я обновился до NetBeans 8.02, который поставляется со Glassfish 4.1. В исходном коде мне пришлось изменить некоторые импорт, никаких других изменений. Flowcope больше не работает. Я не заметил никакой связанной ошибки в журнале сервера. Мне кажется, что аннотации потока просто отбрасываются. Любое предложение?
Спасибо
1 ответ
Это я был виноват. Не знаю почему, но в исходном коде разработки я потерял аннотацию @Produces.