1

我无法成功集成官方 Vaadin-CDI-Integration-Addon,因为在完成官方集成说明后,Exception如果我重新加载已发布的 URL,则会引发以下问题localhost:8080/App/?restartApplication

javax.servlet.ServletException: com.vaadin.server.ServiceException: 
java.lang.IllegalStateException: UI id has already been defined

以下小解决方法是经过测试的有效解决方案,它完成了官方说明。

4

1 回答 1

1

您必须完成以下步骤才能将官方 CDI-Integration-Addon 成功集成到您的 Vaadin 项目中。

  • 完全按照官方方法中的说明进行操作。
  • ?restartApplication从 URL 中删除参数。这避免了Exception.
  • 注入 EJB,如下面的清单所示。
  • 请记住,如有必要,请手动重新启动您的应用程序!

@CDIUI
public class ExampleCDIUI extends UI {

    @Inject
    MyLocalBeanInterface myBean;

    @Override
    public void init(VaadinRequest request) {
        Label label = new Label("Hello Vaadin user");
        setContent(label);

        // myBean should be accessible now.

    }

}

而已。我希望这有帮助 :-)

于 2013-07-29T16:20:25.630 回答