我用 @CDIUI 注释了我的 UI,并且不使用 web.xml 进行绑定(bind)。但是我如何设置上下文参数,如 debugMode、heartbeatIntervall、closeIdleSessions ...?有没有办法注释这些功能或将它们传递到 UI 实例中?或者我必须提供 web.xml 吗? System.getProperty(JBoss 属性处理)怎么样?感谢您提供任何线索。
最佳答案
尝试通过以下方式实现您自己的DeploymentConfiguration
:
public class ExampleUI extends UI {
private class ExampleConfiguration implements DeploymentConfiguration {
@Override
public int getHeartbeatInterval() {
return 30;
}
@Override
public boolean isCloseIdleSessions() {
return true;
}
}
@Override
protected void init(VaadinRequest request) {
getSession().setConfiguration(new ExampleConfiguration());
...
}
}
然后您可以以标准方式获取 ExampleUI
类外部的上下文参数:
VaadinSession.getCurrent().getConfiguration().getHeartbeatInterval();
VaadinSession.getCurrent().getConfiguration().isCloseIdleSessions();
我希望这会有所帮助。
关于java - 使用 vaadin-cdi 时以编程方式设置上下文参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16963898/