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&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&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&Bundle-Version=1.0.0.GA</bundle>> >> >> >>> >> >>> >> <bundle>wrap:mvn:net.sourceforge.cssparser/cssparser/0.9.11$Bundle-SymbolicName=cssparser&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 > >
