Bug#911187: axis: FTBFS with Java 11 due to javax.rmi and CORBA removal
Le 30/10/2018 à 14:18, Markus Koschany a écrit : > I was investigating the Java 11 FTBFS of axis and uddi4j. I wonder if we > rather should focus on removing these packages instead of patching them. I agree, I've requested the removal of uddi4j and wsil4j. > eclipse-* packages can be ignored and jalview has been RC buggy for a > long time. uddi4j can go as well and it only has eclipse-wtp and wsil4j > as r-deps. The two eclipse packages have now been removed. jalview uses Axis for the javax.xml.rpc API. It can probably use libjaxrpc-api-java instead. > I don't see any code in starjava-vo that uses axis, looks more like a > runtime feature but I'm not sure. I got a quick look. starjava-vo builds fine without axis. I've found only one class with SOAP related code (Ri1RegistryQuery) and it calls the SoapClient class from starjava-registry [1]. Axis isn't used for this client implementation as explained in the source file: /** * Lightweight, freestanding SOAP client which can make simple requests * and allows the responses to be processed as a SAX stream. * Logging of sent and received XML can optionally be performed by * using the {@link #setEchoStream} method. * Probably, there is much of SOAP that this doesn't implement, but * it works well enough to write a registry client on top of it. * * Why write yet another SOAP client? Last time I tried to get Axis * to do this (stream processing of the response) it took me several * days of misery, and still didn't work. The actual job I need to * do here is quite straightforward, so it's not difficult to write it * from scratch. * * @author Mark Taylor * @since9 Dec 2009 */ So I think it's safe to remove the axis dependency in this case. > In uimaj the uimaj-adapter-soap makes use of axis. uima-as builds fine without libuima-adapter-soap-java, so we can scrap it. [1] https://salsa.debian.org/debian-astro-team/starjava-registry/blob/master/src/main/uk/ac/starlink/registry/SoapClient.java
Bug#911187: axis: FTBFS with Java 11 due to javax.rmi and CORBA removal
I was investigating the Java 11 FTBFS of axis and uddi4j. I wonder if we rather should focus on removing these packages instead of patching them. Axis has seen its last release in 2006. AFAIK Apache CXF would be a better alternative because it is actively maintained. Unfortunately it is not available in Debian. Looking at the reverse build-dependencies of axis: Reverse-Build-Depends-Indep === * starjava-vo * starjava-votable * uimaj Reverse-Build-Depends = * eclipse-mylyn * eclipse-wtp * jalview * jets3t * jglobus * uddi4j eclipse-* packages can be ignored and jalview has been RC buggy for a long time. uddi4j can go as well and it only has eclipse-wtp and wsil4j as r-deps. Thus the remaining packages would be: * starjava-vo * starjava-votable * uimaj * jets3t * jglobus jglobus just seems to build an axis module and a binary package without any r-deps, so it could be removed I guess. The jets3t version in Debian is very old but the latest one is also from 2015, so I doubt it has been fixed upstream. I don't see any code in starjava-vo that uses axis, looks more like a runtime feature but I'm not sure. In uimaj the uimaj-adapter-soap makes use of axis. So with a bit of effort we could get rid of a couple of hardly used packages and don't have to maintain them any longer. Thoughts? Markus signature.asc Description: OpenPGP digital signature
Bug#911187: axis: FTBFS with Java 11 due to javax.rmi and CORBA removal
Source: axis Severity: important Tags: sid buster User: debian-j...@lists.debian.org Usertags: default-java11 axis fails to build with Java 11 due to the removal of the javax.rmi and org.omg.CORBA packages: [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:25: error: package org.omg.CORBA does not exist [javac] import org.omg.CORBA.ORB; [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:26: error: package org.omg.CosNaming does not exist [javac] import org.omg.CosNaming.NameComponent; [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:27: error: package org.omg.CosNaming does not exist [javac] import org.omg.CosNaming.NamingContext; [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:28: error: package org.omg.CosNaming does not exist [javac] import org.omg.CosNaming.NamingContextHelper; [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:85: error: cannot find symbol [javac] ORB orb = ORB.init(new String[0], orbProps); [javac] ^ [javac] symbol: class ORB [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:85: error: cannot find symbol [javac] ORB orb = ORB.init(new String[0], orbProps); [javac] ^ [javac] symbol: variable ORB [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:88: error: cannot find symbol [javac] NamingContext root = NamingContextHelper.narrow(orb.resolve_initial_references("NameService")); [javac] ^ [javac] symbol: class NamingContext [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:88: error: cannot find symbol [javac] NamingContext root = NamingContextHelper.narrow(orb.resolve_initial_references("NameService")); [javac] ^ [javac] symbol: variable NamingContextHelper [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:89: error: cannot find symbol [javac] NameComponent nc = new NameComponent(nameId, nameKind); [javac] ^ [javac] symbol: class NameComponent [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:89: error: cannot find symbol [javac] NameComponent nc = new NameComponent(nameId, nameKind); [javac]^ [javac] symbol: class NameComponent [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:90: error: cannot find symbol [javac] NameComponent[] ncs = {nc}; [javac] ^ [javac] symbol: class NameComponent [javac] location: class CORBAProvider [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:91: error: package org.omg.CORBA does not exist [javac] org.omg.CORBA.Object corbaObject = root.resolve(ncs); [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/CORBAProvider.java:101: error: package org.omg.CORBA does not exist [javac] private static final Class[] CORBA_OBJECT_CLASS = new Class[] {org.omg.CORBA.Object.class}; [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/EJBProvider.java:129: error: package javax.rmi does not exist [javac] Object ehome = javax.rmi.PortableRemoteObject.narrow(ejbHome, homeClass); [javac] ^ [javac] /build/axis-1.4/src/org/apache/axis/providers/java/EJBProvider.java:254: error: package javax.rmi does not exist [javac] Object ehome = javax.rmi.PortableRemoteObject.narrow(ejbHome, homeClass); [javac] ^