Javascript 将代码添加到html头标记的vaadin8方法是什么?
建议重写ApplicationServlet.writeAjaxPageHtmlHeader,但我在Vaadin 8中找不到这些类和方法 我在com.vaadin.server.VaadinServlet或com.vaadin.ui.ui中找不到类似的内容Javascript 将代码添加到html头标记的vaadin8方法是什么?,javascript,vaadin,vaadin8,Javascript,Vaadin,Vaadin8,建议重写ApplicationServlet.writeAjaxPageHtmlHeader,但我在Vaadin 8中找不到这些类和方法 我在com.vaadin.server.VaadinServlet或com.vaadin.ui.ui中找不到类似的内容 这里有@JavaScript注释,但是如果我把它放在我的UI类上,脚本将为我的应用程序的每个页面加载。我只需要在一个特定页面上使用它。最初的HTML页面在Vaadin中称为引导页面。有一些文档提示您在中选择正确的方向 在vaadin8中,您需
这里有@JavaScript注释,但是如果我把它放在我的UI类上,脚本将为我的应用程序的每个页面加载。我只需要在一个特定页面上使用它。最初的HTML页面在Vaadin中称为引导页面。有一些文档提示您在中选择正确的方向 在vaadin8中,您需要将BootstrapListener添加到会话中。您可以通过在VaadinServlet中添加SessionInitListener来创建会话 注册会话 本例使用带弹簧靴的Vaadin,但不使用弹簧靴时,同样的原则适用
@Component("vaadinServlet")
@WebServlet(urlPatterns = "/*", name = "BootstrapVaadinServlet", asyncSupported = true)
@VaadinServletConfiguration(ui = BoostrapUi.class, productionMode = false)
public class BootstrapVaadinServlet extends SpringVaadinServlet {
private static final Logger logger = LoggerFactory.getLogger(BootstrapVaadinServlet.class);
@Override
protected void servletInitialized() throws ServletException {
super.servletInitialized();
getService().addSessionInitListener(this::addBoostrapListenerOnSessionInit);
}
private void addBoostrapListenerOnSessionInit(SessionInitEvent sessionInitEvent) {
sessionInitEvent.getSession().addBootstrapListener(new AppBootstrapListener());
}
}
实现html头标记修改
最初的HTML页面在Vaadin中称为引导页面。有一些文档提示您在中选择正确的方向 在vaadin8中,您需要将BootstrapListener添加到会话中。您可以通过在VaadinServlet中添加SessionInitListener来创建会话 注册会话 本例使用带弹簧靴的Vaadin,但不使用弹簧靴时,同样的原则适用
@Component("vaadinServlet")
@WebServlet(urlPatterns = "/*", name = "BootstrapVaadinServlet", asyncSupported = true)
@VaadinServletConfiguration(ui = BoostrapUi.class, productionMode = false)
public class BootstrapVaadinServlet extends SpringVaadinServlet {
private static final Logger logger = LoggerFactory.getLogger(BootstrapVaadinServlet.class);
@Override
protected void servletInitialized() throws ServletException {
super.servletInitialized();
getService().addSessionInitListener(this::addBoostrapListenerOnSessionInit);
}
private void addBoostrapListenerOnSessionInit(SessionInitEvent sessionInitEvent) {
sessionInitEvent.getSession().addBootstrapListener(new AppBootstrapListener());
}
}
实现html头标记修改
如果可以使用附加组件,请尝试 概述 使用此加载项,您可以定义要添加到主机页的标记 向UI类添加注释 来自附加组件使用示例的示例
@MetaTags({
// Replaces the Vaadin X-UA-Compatible header
@Meta(httpEquiv = "X-UA-Compatible", content = "hello"),
@Meta(name = "test", content = "test") })
// And showing how to create a link tag as well
@Link(rel = "foobar", href = "about:blank")
public class DemoUI extends UI {
...
}
如果可以使用附加组件,请尝试 概述 使用此加载项,您可以定义要添加到主机页的标记 向UI类添加注释 来自附加组件使用示例的示例
@MetaTags({
// Replaces the Vaadin X-UA-Compatible header
@Meta(httpEquiv = "X-UA-Compatible", content = "hello"),
@Meta(name = "test", content = "test") })
// And showing how to create a link tag as well
@Link(rel = "foobar", href = "about:blank")
public class DemoUI extends UI {
...
}