【问题标题】:Vaadin URL MappingVaadin URL 映射
【发布时间】:2021-05-13 07:44:50
【问题描述】:

有没有办法不输入特定的 url 映射(vaadin.urlMapping)?但是我还想使用 swagger 例如(ip:8080/swagger-ui/index.html)?最好从 vaadin 中排除一些映射。

感谢您的帮助!

最好的问候,托马斯

【问题讨论】:

  • 你能帮助澄清一下这个问题吗?我是否正确理解您希望您的 Vaadin 应用程序在 / 上可用,但让它忽略 /swagger-ui/*
  • 你好马库斯!正确,这正是我的要求。最好的问候,托马斯
  • 我花了一些时间试图实现这一点。我得到的建议是交换处理程序映射的优先级,以便在 Vaadin 的东西之前处理 swagger-ui。但不幸的是,我无法让它工作。

标签: vaadin vaadin-flow


【解决方案1】:
  1. URL/URL/IP 的一部分 放入 properties 文件
  2. URL/URL/IP 的一部分 放入 web.xml 文件

在某些情况下,您希望远程 URL 与本地 URL 不同或远程 SSL URL 与本地 URL 不同)。 在这种情况下,我在两个不同的上下文中将 IP 和域放在 web.xml 中。

final String serverUrl = new URL("" + ((VaadinServletRequest)VaadinService.getCurrentRequest())
                    .getHttpServletRequest().getRequestURL()).getAuthority();
final String  serverProtocol =
                    ((VaadinServletRequest)VaadinService.getCurrentRequest()).getHttpServletRequest().getProtocol();
final boolean serverSecure   =
            ((VaadinServletRequest)VaadinService.getCurrentRequest()).getHttpServletRequest().isSecure();
if(!serverSecure){
UI.getCurrent().getSession().setAttribute(
    ResourceProperty.configBundle.getString("APPLICATION_URL"),
    "http:" + serverUrl);}
else{
UI.getCurrent().getSession().setAttribute(
    ResourceProperty.configBundle.getString("APPLICATION_URL"),
    "https:" + serverUrl);}

【讨论】:

  • 您好!谢谢你的帮助!不幸的是,我不清楚如何使用上面的代码。目前,我在 application.properties 文件中将属性 vaadin.urlMapping 设置为无特定路径。在这种情况下,诸如“/swagger-ui/*”之类的其他映射不再起作用,因为 Vaadin 会捕获所有映射。通过将参数更改为“vaadin.urlMapping=/ui/*”,swagger 映射正在工作,但这不是我的目标。目标是没有任何针对 Vaadin 的特定映射。最好的问候,托马斯
  • 在 Rapidclipse 4 中使用 Vaadin 8 是可能的,但我不知道在 Vaadin 14 中是否可行。在我将项目迁移到 Rapidclipse X 之前。我们的 URL 曾经是 localhost:8080/Project no无论您在哪里访问过从未用于显示任何映射的 URL。我认为您想在 RapidclipseX 中使用 Vaadin 14 实现相同的目标。对吗?
  • 不幸的是,我没有正确理解您的问题。使用 vaadin 8,可以有一个没有特定映射的 URL。在 Vaadin 14/19 中,我必须添加应用程序属性,否则 swagger 不再起作用,因为 vaadin 捕获所有映射。
  • 我在最后几天/几周尝试了很多来满足这个要求,但不幸的是没有运气。有没有其他人可能知道如何处理这个问题?谢谢! :)
猜你喜欢
  • 1970-01-01
  • 2012-01-20
  • 2017-09-21
  • 2020-01-05
  • 2016-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多