Jpa 通过使用Vaadin CDI集成插件实现EJB注入到Vaadin 7 UI
我无法成功集成正式的Vaadin CDI集成插件,因为在完成正式集成说明后,如果我重新加载已发布的URLJpa 通过使用Vaadin CDI集成插件实现EJB注入到Vaadin 7 UI,jpa,ejb,vaadin,cdi,code-injection,Jpa,Ejb,Vaadin,Cdi,Code Injection,我无法成功集成正式的Vaadin CDI集成插件,因为在完成正式集成说明后,如果我重新加载已发布的URLlocalhost:8080/App/?restartApplication,将引发以下异常 javax.servlet.ServletException: com.vaadin.server.ServiceException: java.lang.IllegalStateException: UI id has already been defined 下面的小解决方案是一个经过测试的
localhost:8080/App/?restartApplication
,将引发以下异常
javax.servlet.ServletException: com.vaadin.server.ServiceException:
java.lang.IllegalStateException: UI id has already been defined
下面的小解决方案是一个经过测试的工作解决方案,它完成了官方说明。您必须完成以下步骤,才能成功地将官方CDI集成插件集成到您的Vaadin项目中
- 严格按照规定去做
- 从URL中删除
?restartApplication
参数。这样可以避免出现异常
- 注入EJB,如下面的清单所示
- 请记住,如果需要,请手动重新启动应用程序李>
就这样。我希望这会有所帮助:-)您必须完成以下步骤,才能成功地将官方CDI集成插件集成到您的Vaadin项目中
- 严格按照规定去做
- 从URL中删除
?restartApplication
参数。这样可以避免出现异常
- 注入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.
}
}