Hi, It looks like a regression in Vaadin 8.6.0.
I will try to take a look next week. Regards JB > Le 29 avr. 2021 à 22:03, Васил Зорев <[email protected]> a écrit : > > Does not seem that it was intentional, newer Vaadin 8 release notes say there > were "improvements in OSGi support". > > In my tests on Karaf 4.3.2-SNAPSHOT the last working version is 8.5.2, it > broke with 8.6.0. Possibly with > https://github.com/vaadin/framework/commit/7e89b5e3348be487110bd8a5c60336ff363cf9d6 > > <https://github.com/vaadin/framework/commit/7e89b5e3348be487110bd8a5c60336ff363cf9d6> > , > although not sure about it. I would suggest to ask on the Vaadin forums as > well, just in case. > > На чт, 29.04.2021 г. в 14:30 ч. Richard Hierlmeier > <[email protected] <mailto:[email protected]>> написа: > I have to port a Vaadin 7 applikation to Vaadin 8, so I planned to used the > newest one (8.12.2 or 8.13.0). > > I found a workaround for the problem. > When the Vaadin Servlet that hosts the UI has "/VAADIN/*" in the > URL-Patterns, then the Servlet is called when static resource files from > /VAADIN are requested. > You can overwride then in the VaadinServlet the findResourceURL method and > you can search for all OsgiVaadinResource services an ask them for the > resources. > > Can it be that Vaadin dropped the OSGI support for Vaadin 8. > > Regards > > Richard > > > > > > > > > Am Mi., 28. Apr. 2021 um 23:39 Uhr schrieb Васил Зорев > <[email protected] <mailto:[email protected]>>: > What Vaadin version do you depend on ? I deployed locally the app by Peter > Lehto - https://github.com/peterl1084/vaadin-karaf > <https://github.com/peterl1084/vaadin-karaf> and observed something kind of > strange. > > Karaf version is 4.3.2-SNAPSHOT (from 2-3 weeks ago). > > On Vaadin version 8.3.0, going to http://localhost:8181/myapp > <http://localhost:8181/myapp> showed the expected view. (however > vaadin-osgi-integration was 8.13.0 in the pom at that time, by mistake..) > > I then changed to Vaadin 8.13.0 and got the same error as you did: > Failed to load resource: the server responded with a status of 404 (Not > Found) http://localhost:8181/vaadin-8.13.0/VAADIN/vaadinBootstrap.js?v=8.13.0 > <http://localhost:8181/vaadin-8.13.0/VAADIN/vaadinBootstrap.js?v=8.13.0> > myapp:21 Uncaught ReferenceError: vaadin is not defined > at myapp:21 > vaadin-8.13.0/VAADIN/themes/valo/favicon.ico:1 Failed to load resource: the > server responded with a status of 404 (Not Found) > http://localhost:8181/vaadin-8.13.0/VAADIN/themes/valo/favicon.ico > <http://localhost:8181/vaadin-8.13.0/VAADIN/themes/valo/favicon.ico> > > Funny enough, changing back to 8.3.0 got it running again... I leave it for > now, but will try to figure something out these days. > > Regards, > Vassil > > На ср, 28.04.2021 г. в 20:03 ч. Васил Зорев <[email protected] > <mailto:[email protected]>> написа: > Hi Richard, > > I cannot give an answer yet as I have no idea yet, but we are currently > running a Vaadin 7 app on Karaf 4.3.1 in my work environment so I would be > very interested to have a look into your issue. > > A few questions. Are you using "stock" Karaf 4.3.1 or you forked it and built > your own? Can you please provide a sample Vaadin 8 app (the minimal possible > version) that reproduces the error you get that I can deploy locally? How do > you deploy the app to Karaf? Also if needed please provide a sample web > descriptor file (if you don't use annotations). > > Regards, > Vassil > > На ср, 28.04.2021 г. в 10:50 ч. Richard Hierlmeier > <[email protected] <mailto:[email protected]>> написа: > > I try to get a simple Vaadin 8 application running on Karaf 4.3.1. > However it is not working. Vaadin can not load it's bootstrap Javascript > File. At the very beginning the Vaadin application makes an > http request to http://localhost:8181/VAADIN/vaadinBootstrap.js > <http://localhost:8181/VAADIN/vaadinBootstrap.js> > Karaf answers with an error code 404 (not found). > > The Vaadin OSGI integration registers it's static resources with > http-whiteboard. > The http:list shows that the patterns are known: > > karaf@root()> http:list > ID | Servlet | Servlet-Name | > State | Alias | Url > ----+---------------------+-------------------------------------------------+-------------+-----------------------------------------------------+------------------------------------------------------ > 176 | CXFNonSpringServlet | cxf-osgi-transport-servlet | > Deployed | /cxf | [/cxf/*] > 238 | ResourceServlet | txt | > Deployed | /VAADIN/test.txt | > [/VAADIN/test.txt/*] > 238 | ResourceServlet | /VAADIN/themes/mytheme/*:/VAADIN/themes/mytheme | > Deployed | /VAADIN/themes/mytheme/* | > [/VAADIN/themes/mytheme/*] > 238 | ResourceServlet | /VAADIN/themes/valo/*:/VAADIN/themes/valo | > Deployed | /VAADIN/themes/valo/* | > [/VAADIN/themes/valo/*] > 238 | ResourceServlet | gz | > Deployed | /VAADIN/vaadinBootstrap.js.gz | > [/VAADIN/vaadinBootstrap.js.gz/*] > 238 | ResourceServlet | js | > Deployed | /VAADIN/vaadinBootstrap.js | > [/VAADIN/vaadinBootstrap.js/*] > 238 | ResourceServlet | gz | > Deployed | /VAADIN/vaadinPush.debug.js.gz | > [/VAADIN/vaadinPush.debug.js.gz/*] > 238 | ResourceServlet | js | > Deployed | /VAADIN/vaadinPush.debug.js | > [/VAADIN/vaadinPush.debug.js/*] > 238 | ResourceServlet | gz | > Deployed | /VAADIN/vaadinPush.js.gz | > [/VAADIN/vaadinPush.js.gz/*] > 238 | ResourceServlet | js | > Deployed | /VAADIN/vaadinPush.js | > [/VAADIN/vaadinPush.js/*] > 238 | ResourceServlet | DefaultWidgetSet | > Deployed | /VAADIN/widgetsets/com.vaadin.DefaultWidgetSet/* | > [/VAADIN/widgetsets/com.vaadin.DefaultWidgetSet/*] > 238 | ResourceServlet | Vaadin7WidgetSet | > Deployed | /VAADIN/widgetsets/com.vaadin.v7.Vaadin7WidgetSet/* | > [/VAADIN/widgetsets/com.vaadin.v7.Vaadin7WidgetSet/*] > > I debugged the http request to /VAADIN/vaadinBootstrap.js in the > ResourceServlet from pax-web-jetty and found out that the ResourceServlet has > the wrong HttpContext. > It is using the one from CXF and not the from the Vaadin bundle. > > karaf@root()> la -u | grep 176 > 176 | Active | 40 | 3.4.3 | > mvn:org.apache.cxf/cxf-rt-transports-http/3.4.3 > > When the bundle with ID 176 ( cxf-rt-transports-http) is stopped then the > resource /VAADIN/vaadinBoostrap.js is still not found, but I do no longer > reach the breakpoint in the pax-web-jetty ResourceServlet > > The OSGI service that should bring the /VAADIN/boostrap.js resource has the > following properties: > > [com.vaadin.osgi.resources.OsgiVaadinResource] > ---------------------------------------------- > osgi.http.whiteboard.context.select = (osgi.http.whiteboard.context.name > <http://osgi.http.whiteboard.context.name/>=com.vaadin) > osgi.http.whiteboard.resource.pattern = /VAADIN/vaadinBootstrap.js > osgi.http.whiteboard.resource.prefix = /VAADIN/vaadinBootstrap.js > service.bundleid = 237 > service.id <http://service.id/> = 251 > service.scope = singleton > Provided by : > Vaadin Server (237) > > The ServletContext with name com.vaadin has the following properties: > > [javax.servlet.ServletContext] > ------------------------------ > osgi.web.contextname = com.vaadin > osgi.web.contextpath = /vaadin-8.12.2 > osgi.web.symbolicname = com.vaadin.shared > osgi.web.version = 8.12.2 > service.bundleid = 238 > service.id <http://service.id/> = 242 > service.scope = singleton > Provided by : > Vaadin Shared (238) > Used by: > OPS4J Pax Web - Runtime (100) > > I have the following http-white-board feature installed: > > karaf@root()> feature:list | grep -i white > pax-web-http-whiteboard | 7.3.13 | | Uninstalled > | standard-4.3.1 | Pax Web OSGi HTTP Whiteboard support > http-whiteboard | 7.3.13 | | Uninstalled > | standard-4.3.1 | Transition feature for backward > compatibility > pax-http-whiteboard | 7.3.13 | | Started > | org.ops4j.pax.web-7.3.13 | Provide HTTP Whiteboard pattern support > > I tried also the following http requests: > > http://localhost:8181/vaadin-8.12.2/VAADIN/vaadinBootstrap.js > <http://localhost:8181/vaadin-8.12.2/VAADIN/vaadinBootstrap.js> > http://localhost:8181/vaadin-8.12.2/vaadinBootstrap.js > <http://localhost:8181/vaadin-8.12.2/vaadinBootstrap.js> > http://localhost:8181/VAADIN/vaadinBootstrap.js > <http://localhost:8181/VAADIN/vaadinBootstrap.js> > > All end up with an 404. > > What is wrong in my setup? > > Regards > > Richard > > > > > > > > > > > > > > > > > > >
