vaadin / flow

Vaadin Flow is a Java framework binding Vaadin web components to Java. This is part of Vaadin 10+.
Apache License 2.0
616 stars 169 forks source link

Fusion: connect dependencies are not OSGi compatible #9350

Closed denis-anisimov closed 3 years ago

denis-anisimov commented 3 years ago

At least spring-beans (used package org.springframework.beans.factory.annotation ) has no OSGi compatible manifest. I see a number of Spring deps with comment <!-- Connect Dependencies --> in the flow-server pom file which are potentially are not OSGi compatible.

In fact the functionality in flow-server which depends on Spring may not be in flow-server at all. It should be moved into Spring add-on or another add-on which depends on Spring add-on.

denis-anisimov commented 3 years ago

May be I'm wrong and missing something but it looks like the package com.vaadin.flow.server.connect which contains classes with Spring dependencies is a "standalone" package which may be simply extracted from flow-server module to some other module without any additional action. The package is quite isolated. Spring is used only for the classes in this package and the only provided functionality is a REST endpoint .

For now I will make Spring deps optional which will disable Connect endpoints and it won't work in OSGi.

haijian-vaadin commented 3 years ago

The endpoint code has been moved to fusion-endpoint module in https://github.com/vaadin/flow/pull/9499, so this ticket can now be closed.