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é" <jb@nanthrax.net>:
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é <j...@nanthrax.net
> <mailto:j...@nanthrax.net>> 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é>
>
>> jbonofre@apache.org <mailto:jbonofre@apache.org>>
>
>> http://blog.nanthrax.net>
>
>> Talend - http://www.talend.com>
>
>>
>
--
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com
|