我想像这样自定义“不同步”消息:https://vaadin.com/book/vaadin7/-/page/application.errors.html

我有:

public class SpringApplicationServlet extends AbstractApplicationServlet {
...
@Override
protected SystemMessages getSystemMessages() {
  logger.debug("getSystemMessages()");
  CustomizedSystemMessages m = new CustomizedSystemMessages();
  m.setOutOfSyncCaption("My custom caption");
  return m;
}
...

我清楚地看到没有调用getSystemMessages(),但是在使用多个窗口时显示带标题为“不同步”的红色通知。
瓦丹书说



我如何知道在哪个类中覆盖getSystemMessages()SpringApplicationServlet似乎是最合适的

最佳答案

根据https://vaadin.com/api/com/vaadin/Application.html#getSystemMessages
该方法应在扩展Application的类中实现

因此,现在可以使用:

public class MainApplication extends Application {
...
  @Override
  public static SystemMessages getSystemMessages() {
  ...

尽管Java不允许覆盖静态方法,但Vaadin会产生异常并调用此方法(如果存在)。

09-30 12:11