Hello Julian,

I had a similar problem using vaadin flow with karaf and created a post a few 
months ago. Maybe it will help.

http://devblog.mhus.de/2019/08/vaadin-14-with-osgi-and-karaf.html 
<http://devblog.mhus.de/2019/08/vaadin-14-with-osgi-and-karaf.html>

Regards,
Mike


> On 18. Sep 2019, at 17:27, Julian Feinauer <[email protected]> 
> wrote:
> 
> Hey,
> 
> I decided to post again an update just to learn something... : )
> The Demo I posted sets up a felix instance with the bundles listed below.
> 
> I am able to start that in karaf If I copy all over to deploy BUT its not 
> working due to NPEs or stuff and I guess there are some conflicts as things 
> like the servlet container are already in a karaf bundle...
> 
> Could it be possible to just take out some jars (and add some bundles / 
> features to karaf) and then make the whole thing run?
> 
> Julian
> 
> Appendix: List of jars:
> 
> animal-sniffer-annotations-1.9.jar
> asm-debug-all-5.0.3.jar
> atmosphere-runtime-2.4.30.vaadin1.jar
> byte-buddy-1.9.3.jar
> commons-fileupload-1.3.3.jar
> commons-io-2.6.jar
> commons-lang3-3.0.jar
> flow-client-1.4.3.jar
> flow-data-1.4.3.jar
> flow-html-components-1.4.3.jar
> flow-osgi-1.4.3.jar
> flow-push-1.4.3.jar
> flow-server-1.4.3.jar
> gentyref-1.2.0.vaadin1.jar
> gwt-elemental-2.8.2.vaadin2.jar
> iron-a11y-announcer-2.1.0.jar
> iron-a11y-keys-behavior-2.1.1.jar
> iron-fit-behavior-2.2.1.jar
> iron-flex-layout-2.0.3.jar
> iron-icon-2.1.0.jar
> iron-iconset-svg-2.2.1.jar
> iron-list-2.0.19.jar
> iron-media-query-2.1.0.jar
> iron-meta-2.1.1.jar
> iron-overlay-behavior-2.3.4.jar
> iron-resizable-behavior-2.1.1.jar
> iron-scroll-target-behavior-2.1.1.jar
> jansi-1.17.1.jar
> jetty-client-9.4.12.v20180830.jar
> jetty-http-9.4.12.v20180830.jar
> jetty-io-9.4.12.v20180830.jar
> jetty-jmx-9.4.12.v20180830.jar
> jetty-security-9.4.12.v20180830.jar
> jetty-server-9.4.12.v20180830.jar
> jetty-servlet-9.4.12.v20180830.jar
> jetty-util-9.4.12.v20180830.jar
> jetty-webapp-9.4.12.v20180830.jar
> jetty-xml-9.4.12.v20180830.jar
> jline-3.7.0.jar
> jsoup-1.11.2.jar
> org.apache.aries.spifly.core-internal-1.0.12.jar
> org.apache.aries.spifly.dynamic.bundle-1.0.12.jar
> org.apache.aries.spifly.static.bundle-1.0.12.jar
> org.apache.aries.spifly.static.tool-1.0.12.jar
> org.apache.aries.spifly.weaver-internal-1.0.12.jar
> org.apache.aries.util-1.1.3.jar
> org.apache.felix.bundlerepository-2.0.10.jar
> org.apache.felix.gogo.command-1.0.2.jar
> org.apache.felix.gogo.jline-1.1.0.jar
> org.apache.felix.gogo.runtime-1.1.0.jar
> org.apache.felix.http.base-4.0.4.jar
> org.apache.felix.http.jetty-4.0.6.jar
> org.apache.felix.http.servlet-api-1.1.2.jar
> org.apache.felix.scr.annotations-1.12.0.jar
> org.apache.felix.scr.compat-1.0.4.jar
> org.apache.felix.scr.ds-annotations-1.2.10.jar
> org.apache.felix.scr-2.1.10.jar
> org.osgi.core-6.0.0.jar
> org.osgi.service.serviceloader-1.0.0.jar
> ph-commons-9.1.2.jar
> ph-css-6.1.1.jar
> polymer-2.7.0.jar
> project-base-osgi-1.0-SNAPSHOT.jar
> shadycss-1.8.0.jar
> slf4j-api-1.7.25.jar
> slf4j-simple-1.7.25.jar
> tomcat-servlet-api-8.0.9.jar
> vaadin-accordion-1.0.0.jar
> vaadin-accordion-flow-1.0.3.jar
> vaadin-app-layout-1.0.2.jar
> vaadin-app-layout-flow-1.1.1.jar
> vaadin-button-2.1.5.jar
> vaadin-button-flow-1.3.2.jar
> vaadin-checkbox-2.2.7.jar
> vaadin-checkbox-flow-1.3.1.jar
> vaadin-combo-box-4.2.8.jar
> vaadin-combo-box-flow-2.1.3.jar
> vaadin-context-menu-4.3.4.jar
> vaadin-context-menu-flow-2.0.1.jar
> vaadin-control-state-mixin-2.1.3.jar
> vaadin-core-13.0.4.jar
> vaadin-custom-field-1.0.1.jar
> vaadin-custom-field-flow-2.0.2.jar
> vaadin-date-picker-3.3.4.jar
> vaadin-date-picker-flow-1.3.0.jar
> vaadin-details-1.0.1.jar
> vaadin-details-flow-1.0.1.jar
> vaadin-development-mode-detector-2.0.0.jar
> vaadin-dialog-2.2.1.jar
> vaadin-dialog-flow-1.3.0.jar
> vaadin-element-mixin-2.1.3.jar
> vaadin-form-layout-2.1.2.jar
> vaadin-form-layout-flow-1.3.1.jar
> vaadin-grid-5.3.3.jar
> vaadin-grid-flow-3.0.3.jar
> vaadin-icons-4.2.2.jar
> vaadin-icons-flow-1.3.1.jar
> vaadin-iron-list-flow-1.3.0.jar
> vaadin-item-2.1.0.jar
> vaadin-list-box-1.1.0.jar
> vaadin-list-box-flow-1.3.0.jar
> vaadin-list-mixin-2.1.2.jar
> vaadin-login-1.0.0.jar
> vaadin-login-flow-1.0.0.jar
> vaadin-lumo-styles-1.4.2.jar
> vaadin-lumo-theme-1.4.3.jar
> vaadin-material-styles-1.2.2.jar
> vaadin-material-theme-1.4.3.jar
> vaadin-notification-1.2.1.jar
> vaadin-notification-flow-1.3.0.jar
> vaadin-ordered-layout-1.1.0.jar
> vaadin-ordered-layout-flow-1.3.0.jar
> vaadin-overlay-3.2.11.jar
> vaadin-progress-bar-1.1.0.jar
> vaadin-progress-bar-flow-1.3.0.jar
> vaadin-radio-button-1.1.5.jar
> vaadin-radio-button-flow-1.3.1.jar
> vaadin-select-2.0.4.jar
> vaadin-select-flow-1.0.0.jar
> vaadin-slf4j-jdk14-1.6.1.jar
> vaadin-split-layout-4.1.0.jar
> vaadin-split-layout-flow-1.3.1.jar
> vaadin-tabs-2.1.2.jar
> vaadin-tabs-flow-1.3.0.jar
> vaadin-text-field-2.3.6.jar
> vaadin-text-field-flow-1.3.0.jar
> vaadin-themable-mixin-1.4.4.jar
> vaadin-time-picker-1.2.2.jar
> vaadin-time-picker-flow-1.1.2.jar
> vaadin-upload-4.2.1.jar
> vaadin-upload-flow-1.3.0.jar
> vaadin-usage-statistics-2.0.2.jar
> validation-api-2.0.0.Final.jar
> webcomponentsjs-1.2.6.jar
> websocket-api-9.4.12.v20180830.jar
> websocket-client-9.4.12.v20180830.jar
> websocket-common-9.4.12.v20180830.jar
> websocket-server-9.4.12.v20180830.jar
> websocket-servlet-9.4.12.v20180830.jar
> 
> Am 18.09.19, 02:17 schrieb "Jean-Baptiste Onofré" <[email protected]>:
> 
>    Thanks for the update Julian.
> 
>    I will take a look on vaadin example, and eventually update it if needed.
> 
>    I keep you posted.
> 
>    Regards
>    JB
> 
>    On 18/09/2019 06:56, Julian Feinauer wrote:
>> Hey, short update on that one…
>> 
>> 
>> 
>> In fact, I quickly went through it and I didn’t get much out of it (in
>> fact, I didn’t even get it to run).
>> 
>> But what there is now, is this vaadin example for OSGi which is not that
>> great… I think.
>> 
>> Its located here:
>> 
>> 
>> 
>> https://github.com/vaadin/base-starter-flow-osgi/commit/47aac30104092a15c2744e39e6ed10a79d11ea12
>> 
>> 
>> 
>> (this is the last version for the vaadin 13.x.x release).
>> 
>> 
>> 
>> I get it to start its own felix distro and show the site.
>> 
>> Is there an ‘easy’ trick to get all necessary parts out of it for a
>> karaf feature?
>> 
>> I didn’t get it straightforward as it brings its own jetty and stuff
>> which leads then to some NPEs in my karaf setup.
>> 
>> 
>> 
>> Any help is appreciated!
>> 
>> Julian
>> 
>> 
>> 
>> On 2019/09/16 16:33:15, Jean-Baptiste Onofré <[email protected]
>> <mailto:[email protected]>> wrote:
>> 
>>> Hi Julian,> 
>> 
>>> 
>> 
>>> I don't have personal experience but I helped some guys on Vaadin.>
>> 
>>> 
>> 
>>> IMHO, Vaadin should provide a clean features XML.>
>> 
>>> 
>> 
>>> This is one that I created for Vaadin 7:>
>> 
>>> 
>> 
>>> <?xml version="1.0" encoding="UTF-8"?>>
>> 
>>> <features xmlns="http://karaf.apache.org/xmlns/features/v1.0.0";
>> <http://karaf.apache.org/xmlns/features/v1.0.0%22>>
>> 
>>>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>> <http://www.w3.org/2001/XMLSchema-instance%22>>
>> 
>>>    xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.0.0>
>> 
>>> http://karaf.apache.org/xmlns/features/v1.0.0";
>> <http://karaf.apache.org/xmlns/features/v1.0.0%22>>
>> 
>>>    name="vaadin7-feature">> 
>> 
>>> 
>> 
>>>    <feature install="true" name="vaadin7-feature" version="1.0.0-SNAPSHOT">>
>> 
>>>        <feature>vaadin7-common</feature>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-themes/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-shared/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-server/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-client/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-client-compiled/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-push/7.3.0</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin/vaadin-sass-compiler/0.9.2</bundle>>
>> 
>>>    </feature>> 
>> 
>>> 
>> 
>>>    <feature name="vaadin7-common" version="1.0.0-SNAPSHOT">>
>> 
>>> 
>> 
>>> <bundle>mvn:com.vaadin.external.google/android-json/0.0.20131108.vaadin1</bundle>>
>> 
>>> 
>> 
>>> <bundle>mvn:org.jbundle.util.osgi.wrapped/org.jbundle.util.osgi.wrapped.c3p0/0.9.1.2</bundle>>
>> 
>>>        <bundle>mvn:org.quartz-scheduler/quartz/2.2.1</bundle>>
>> 
>>>        <bundle>mvn:joda-time/joda-time/2.4</bundle>>
>> 
>>> 
>> 
>>> <bundle>wrap:mvn:org.springframework/spring-core/3.2.6.RELEASE$Bundle-SymbolicName=Spring-Framework&amp;Bundle-Version=3.2.6.RELEASE</bundle>>
>> 
>>> 
>> 
>>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_7</bundle>>
>> 
>>>        <bundle>mvn:com.google.guava/guava/16.0.1</bundle>>
>> 
>>>        <bundle>mvn:io.netty/netty/3.9.0.Final</bundle>>
>> 
>>>        <bundle>mvn:org.apache.commons/commons-lang3/3.3.2</bundle>>
>> 
>>> 
>> 
>>>        <bundle>mvn:com.vaadin.external.flute/flute/1.3.0.gg2</bundle>>
>> 
>>> 
>> 
>>> 
>> <bundle>mvn:com.vaadin.external.streamhtmlparser/streamhtmlparser-jsilver/0.0.10.vaadin1</bundle>>
>> 
>> 
>>> 
>> <bundle>mvn:com.vaadin.external.google/guava/16.0.1.vaadin1</bundle>>
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> <bundle>mvn:org.eclipse.jetty.orbit/javax.servlet/3.0.0.v201112011016</bundle>>
>> 
>> 
>>> 
>> 
>>> 
>> <bundle>wrap:mvn:org.w3c.css/sac/1.3$Bundle-SymbolicName=org-w3c-css-sac&amp;Bundle-Version=1.3</bundle>>
>> 
>> 
>>>        <bundle>mvn:org.jsoup/jsoup/1.6.3</bundle>>
>> 
>>> 
>> 
>>> <bundle>mvn:com.vaadin.external.slf4j/vaadin-slf4j-jdk14/1.6.1</bundle>>
>> 
>>> 
>> 
>>> 
>> <bundle>mvn:com.vaadin.external.atmosphere/atmosphere-runtime/2.1.2.vaadin3</bundle>>
>> 
>> 
>>> 
>> 
>>> 
>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.gwt-dev/2.4.0_1</bundle>>
>> 
>> 
>>>        <bundle>mvn:org.apache.commons/commons-jexl/2.1.1</bundle>>
>> 
>>>        <bundle>mvn:com.vaadin.external.json/json/0.0.20080701</bundle>>
>> 
>>> 
>> 
>>> 
>> <bundle>wrap:mvn:javax.validation/validation-api/1.0.0.GA$Bundle-SymbolicName=validation-api&amp;Bundle-Version=1.0.0.GA</bundle>>
>> 
>> 
>>> 
>> 
>>> 
>> <bundle>wrap:mvn:net.sourceforge.cssparser/cssparser/0.9.11$Bundle-SymbolicName=cssparser&amp;Bundle-Version=0.9.11</bundle>>
>> 
>> 
>>>    </feature>> 
>> 
>>> </features>> 
>> 
>>> 
>> 
>>> It's not up to date, but could be a good starting point to update ;)>
>> 
>>> 
>> 
>>> I would propose a updated features XML as Vaadin PR.>
>> 
>>> 
>> 
>>> Regards> 
>> 
>>> JB> 
>> 
>>> 
>> 
>>> On 16/09/2019 18:27, Julian Feinauer wrote:>
>> 
>>>> Hi all,> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>> we use the Vaadin Framework [1] in multiple projects as Frontend 
>>>> technology.>
>> 
>>>>> 
>> 
>>>> As I just recently started with Karaf I wanted to build a small example>
>> 
>>>> app based on Vaadin and OSGI.> 
>> 
>>>>> 
>> 
>>>> Although Vaadin claims to have OSGi support [2], it really doesn’t feel>
>> 
>>>> well documented, properly tested and up to date. And it is lacking a>
>> 
>>>> good Karaf integration like a feature or so.>
>> 
>>>>> 
>> 
>>>> An Example project is shown here [3] but its very implicit (uses>
>> 
>>>> embedded Felix and tons of maven shenanigans as it looks).>
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>> Does anyone here have experience with Vaadin or an idea on how one would>
>> 
>>>> approach a Vaadin-OSGi Application?> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>> Thanks!> 
>> 
>>>>> 
>> 
>>>> Julian> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>>> 
>> 
>>>> [1] https://vaadin.com/>
>> 
>>>>> 
>> 
>>>> [2] https://vaadin.com/docs/v14/flow/osgi/tutorial-osgi-basic.html>
>> 
>>>>> 
>> 
>>>> [3] https://github.com/vaadin/base-starter-flow-osgi>
>> 
>>>>> 
>> 
>>> 
>> 
>>> -- > 
>> 
>>> Jean-Baptiste Onofré> 
>> 
>>> [email protected] <mailto:[email protected]>>
>> 
>>> http://blog.nanthrax.net>
>> 
>>> Talend - http://www.talend.com>
>> 
>>> 
>> 
> 
>    -- 
>    Jean-Baptiste Onofré
>    [email protected]
>    http://blog.nanthrax.net
>    Talend - http://www.talend.com
> 
> 

Reply via email to