首页 > 解决方案 > Vaadin、Spring-Boot 和 Vaadin 附加组件

问题描述

在带有 Spring boot 的 Vaadin 8.0 项目中,我正在尝试使用 Vaadin 插件(WTPdfViewer,https://github.com/WhitesteinTechnologies/wt-pdf-viewer)来预览 PDF 文件。

我遇到的问题是,在尝试查看 PDF 文件时,插件会尝试从我认为错误的路径中获取关联的 javascript 资源。因此它试图从

http://localhost:8080/my/uipath/APP/PUBLISHED/pdf.worker.js

而不是我认为正确的:

http://localhost:8080/vaadinServlet/APP/PUBLISHED/pdf.worker.js

该项目的非 Spring Boot 版本可以正常工作,所以我认为它与 Vaadin 附加组件在 Spring-boot 项目中的工作方式有关。有任何想法吗?

标签: vaadinvaadin8vaadin4spring

解决方案


我认为这与 Vaadin 附加组件在 Spring-boot 项目中的工作方式有关。

不,这不是 Spring Boot 附加组件的普遍问题。这个特定的插件有一个小缺陷,它在这里有 js 文件的硬编码路径:

https://github.com/WhitesteinTechnologies/wt-pdf-viewer/blob/master/src/main/java/com/whitestein/vaadin/widgets/wtpdfviewer/client/WTPdfViewerWidget.java#L920

您找到的解决方法有助于解决此问题。

更好的方法是向插件发布补丁并参数化路径或进行其他适当的更正。


推荐阅读