Vaadin Bootstrap JS widgetset error with reverse proxy

Hello All!

I wasn’t completely sure where to put this topic, so I think this place will be the best for it, as it’s related specifically to VAADIN.

Here’s my problem: I use a reverse proxy in IIS server with multiple internal apps. Everything works fine, except my two apps I’ve built on vaadin. These are the details on the configuration:

From the “world” I use my public dns address to access company resources: https://www.abc.com/ - this is my company’s home page on IIS 8.5 + php on server with private IP 10.0.1.2*.
I have three java apps in my internal network: Atlassian JIRA and Conflunce (running two Tomcat’s on the same server as home page) and Jenkins CI (Tomcat on Debian VM with address 10.0.1.3). All three of them are working fine.
Then, I have two Debian VM’s with my app built with Vaadin + Maven (10.0.1.4 is test app, 10.0.1.5 is demo).
All five apps are accessible from public network with related context paths. Then the IIS URL Rewrite module is doing it’s magic to rewrite the public address to the local one and back.

When the first three apps are runing fine - the last two are throwing an error: “Failed to load the bootstrap javascript: ./VAADIN/vaadinBootstrap.js?v=7.7.8”.

If I’ll open the app using a local address (e.g. 10.0.1.4:8080/app) - it’s working fine. So obviously, there’s something wrong with URL rewrite.

Has anyone seen this?

Thank you in advance,
Tom


  • Please note, that neither the web page, nor the private addresses are real and they’re only used to explain the problem nature.

OK, just got it partially working. It turned out, that the error is thrown only if i’ll try to open the app by the address https://www.abc.com/app. But if I’ll add a slash at the end of an address (https://www.abc.com/app/) then app is starting properly.

Wierd, huh?