I am struggling to get JAXB working under openHAB 3.0 / Java 11 (working for 2.5.x / Java 8).
I use an external library, XMPP/Websocket, having dependency for
jakarta.xml.soap-api/1.4.2, built successfully using jdk 11.0.8.
My project is set up with dependency for the external library mentioned above, several
org.glassfish libraries, and feature dependency for
openhab.tp-jaxb is included in the
feature.xml file. My project builds successfully using jdk 11.0.8.
However, when running the binding under OH 3.0M2, the websocket handshake is carried out successfully, but the stream negotiation never seem to start, and the websocket connection get closed with code 1006, “Closed abnormally”. As mentioned, the stream negotiation works under 2.5.x environment (libraries/project built using jdk 1.8.0) resulting in successful websocket connection/XMPP updates.
Would assume the problem relates to no stream negotiation / JAXB.
Any hints/help would be appreciated.
And if I also try to implement
org.glassfish.jaxb/jaxb-runtime/2.33 as dependencies in my project/binding, I get build errors related to
Classes found in the wrong directory:
META-INF/versions/9/javax/xml/bind/ModuleUtil.class=javax.xml.bind.ModuleUtil META-INF/versions/9/com/sun/xml/bind/v2/runtime/reflect/opt/Injector.class=com.sun.xml.bind.v2.runtime.reflect.opt.Injector META-INF/versions/9/com/sun/xml/bind/v2/runtime/reflect/opt/AccessorInjector.class=com.sun.xml.bind.v2.runtime.reflect.opt.AccessorInjector META-INF/versions/9/com/sun/xml/bind/v2/runtime/reflect/opt/OptimizedTransducedAccessorFactory.class=com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedTransducedAccessorFactory META-INF/versions/9/com/sun/xml/bind/v2/runtime/reflect/opt/OptimizedAccessorFactory.class=com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory
Uncertain why, as
openhab.tp-jaxb also implements