from warning: No classloader found for java.util.ServiceLoader:load(interface org.eclipse.jetty.websocket.api.extensions.Extension)
reason:
spi-fly on idempiere use Dynamic Weaving to lookup service provide
it use Bundle.ACTIVE event to start lookup service provide (see org.apache.aries.spifly.BaseActivator and ProviderBundleTrackerCustomizer)
so service provide need to active before it's used
solution:
active and set start level to 3 for some bundle relate websocket to plan support websocket
remain some warning:
10:39:31.747-----------> BaseActivator.log: No classloader found for java.util.ServiceLoader:load(interface org.atmosphere.inject.Injectable)
don't fix because it still work well, in case active this bundle will encounter issue relase package "org.atmosphere.annotation" not yet export
https://github.com/Atmosphere/atmosphere/issues/1896
WARNING: No classloader found for java.util.ServiceLoader:load(interface org.eclipse.jetty.xml.ConfigurationProcessorFactory)
WARNING: No classloader found for java.util.ServiceLoader:load(interface org.eclipse.jetty.xml.ConfigurationProcessorFactory)
just find SpringConfigurationProcessorFactory and SpringConfigurationProcessorFactory implement that service, it look for spring so don't need resolve
refer:http://aries.apache.org/modules/spi-fly.html
+ add more Osgi for jasper dependency
+ don't fix incompatibility issue for swing
+ use bootdelegation to resolve org.w3c.dom.events issue. let all use class from jdk