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
,
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 <
rhierlme...@googlemail.com> написа:

> 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 Васил Зорев <
> vassil.zore...@gmail.com>:
>
>> What Vaadin version do you depend on ? I deployed locally the app by
>> Peter Lehto - 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 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
>> 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
>>
>> 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 ч. Васил Зорев <vassil.zore...@gmail.com>
>> написа:
>>
>>> 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 <
>>> rhierlme...@googlemail.com> написа:
>>>
>>>>
>>>> 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
>>>> 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=com.vaadin)
>>>>  osgi.http.whiteboard.resource.pattern = /VAADIN/vaadinBootstrap.js
>>>>  osgi.http.whiteboard.resource.prefix = /VAADIN/vaadinBootstrap.js
>>>>  service.bundleid = 237
>>>>  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 = 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/vaadinBootstrap.js
>>>> http://localhost:8181/VAADIN/vaadinBootstrap.js
>>>>
>>>> All end up with an 404.
>>>>
>>>> What is wrong in my setup?
>>>>
>>>> Regards
>>>>
>>>>   Richard
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>

Reply via email to