Woden 1.0M10 is actually an OSGi bundle as well:
./org/apache/woden/woden-core/1.0M10/woden-core-1.0M10.jar
contains
Import-Package: javax.xml.namespace,javax.xml.parsers,javax.xml.transfor
m,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.commons
.logging;resolution:=optional,org.apache.ws.commons.schema;version="[2.
2,3)",org.apache.ws.commons.schema.resolver;version="[2.2,3)",org.apach
e.ws.commons.schema.utils;version="[2.2,3)",org.w3c.dom,org.xml.sax
and so it is this org.apache.ws.commons.schema.resolver that is
missing basically.
./org/apache/ws/xmlschema/xmlschema-core/2.2.1/xmlschema-core-2.2.1.jar
has
Export-Package: org.apache.ws.commons.schema;version="2.2.1",org.apache.
ws.commons.schema.constants;version="2.2.1",org.apache.ws.commons.schem
a.extensions;version="2.2.1",org.apache.ws.commons.schema.resolver;vers
ion="2.2.1",org.apache.ws.commons.schema.utils;version="2.2.1"
.. but our taverna-wsdl-generic/pom.xml depends on an earlier version:
<dependency>
<groupId>org.apache.ws.xmlschema</groupId>
<artifactId>xmlschema-core</artifactId>
<version>2.1.0</version>
</dependency>
So I tried upgrading to xmlschema-core 2.2.1 which fails in our code:
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-compiler-plugin:3.2:compile
(default-compile) on project taverna-wsdl-generic: Compilation
failure: Compilation failure:
[ERROR]
/home/stain/src/taverna/incubator-taverna-common-activities/taverna-wsdl-generic/src/main/java/org/apache/taverna/wsdl/parser/TypeDescriptors.java:[372,53]
incompatible types: org.apache.ws.commons.schema.XmlSchemaAllMember
cannot be converted to org.apache.ws.commons.schema.XmlSchemaElement
[ERROR]
/home/stain/src/taverna/incubator-taverna-common-activities/taverna-wsdl-generic/src/main/java/org/apache/taverna/wsdl/parser/TypeDescriptors.java:[383,54]
incompatible types:
java.util.List<org.apache.ws.commons.schema.XmlSchemaChoiceMember>
cannot be converted to
java.util.List<org.apache.ws.commons.schema.XmlSchemaObject>
so much for Semantic Versioning, Apache Web Services.. :-(
So I guess the conclusion is to fix the code to use a newer xmlschema-core 2.2.1
On 15 January 2016 at 15:48, Stian Soiland-Reyes <[email protected]> wrote:
> You are right in that taverna-commandline does not fail building -
> although perhaps it should?
>
> https://builds.apache.org/user/stain/my-views/view/taverna/job/incubator-taverna-commandline/lastSuccessfulBuild/console
>
> says towards the end:
>
> [INFO] --- taverna-maven-plugin:0.2.1-incubating-SNAPSHOT:profile-generate
> (default-profile-generate) @ taverna-command-line-product ---
> [WARNING] Bundle :
> org.apache.taverna.commonactivities:taverna-wsdl-generic:jar:2.1.0-incubating-SNAPSHOT
> has unresolved package dependencies:
> [WARNING] org.apache.ws.security;version="[1.6.0,2.0.0)"
> [WARNING] org.apache.ws.security.message;version="[1.6.0,2.0.0)"
> [WARNING] Bundle : org.apache.woden:woden-core:jar:1.0M10 has
> unresolved package dependencies:
> [WARNING] org.apache.ws.commons.schema.resolver;version="[2.2.0,3.0.0)"
> [WARNING] org.apache.ws.commons.schema;version="[2.2.0,3.0.0)"
> [WARNING] org.apache.ws.commons.schema.utils;version="[2.2.0,3.0.0)"
> [WARNING] Not an OSGi bundle : org.osgi:org.osgi.core:jar:4.3.1
> [WARNING] Not an OSGi bundle : org.osgi:org.osgi.compendium:jar:4.3.1
> [WARNING] Not an OSGi bundle : commons-logging:commons-logging:jar:1.1.1
> [WARNING] Not an OSGi bundle : org.apache.poi:poi:jar:3.6
> [WARNING] Not an OSGi bundle : org.apache.poi:poi-ooxml:jar:3.6
> [WARNING] Not an OSGi bundle : xalan:xalan:jar:2.7.1
> [WARNING] Not an OSGi bundle :
> org.apache.taverna.commandline:taverna-commandline-launcher:jar:3.1.0-incubating-SNAPSHOT
> [WARNING] Not an OSGi bundle : junit:junit:jar:4.11
> [INFO]
>
>
> And I can verify that this is an actual issue by trying to run
> executeworkflow.sh asdfasdf
>
> stain@biggie:~/src/taverna/incubator-taverna-commandline/taverna-commandline-product/target/apache-taverna-commandline-3.1.0-incubating-SNAPSHOT-dev/apache-taverna-commandline-3.1.0-incubating-SNAPSHOT$
> sh executeworkflow.sh asdf
>
> OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=400m;
> support was removed in 8.0
> The bundle
> "org.apache.taverna.commonactivities.taverna-wsdl-activity_2.1.0.incubating-SNAPSHOT
> [63]" could not be resolved. Reason: Missing Constraint:
> Import-Package: org.apache.taverna.wsdl.parser;
> version="[2.1.0,3.0.0)"
>
>
>
> Are newer Woden dependencies available and that are valid OSGi package
> (including their dependencies) - or should we just add them with
> Embed-Dependency so Woden and its dependencies are included within the
> JAR? (effectively appearing on the same classpath as wsdl-generic).
>
> I think some potential problems with the Embed is if we expose any of
> those classes through class signature (e.g. as a parameter, return
> type or superclass), then we might also be reexposing the woden or
> ws.security packages.
>
> I looked at the existing META-IF/MANIFEST.MF within
> taverna-wsdl-generic/target/taverna-wsdl-generic-2.1.0-incubating-SNAPSHOT.jar
>
> which says
>
> Export-Package: org.apache.taverna.wsdl.parser;uses:="javax.xml.namespac
> e,org.apache.ws.commons.schema,org.w3c.dom.ls,org.xml.sax,org.w3c.dom,j
> avax.xml.transform.stream,org.apache.ws.commons.schema.resolver,javax.x
> ml.transform.dom,javax.xml.transform,javax.xml,javax.xml.soap,org.apach
> e.ws.commons.schema.utils,javax.wsdl.extensions.soap12,javax.wsdl.xml,j
> avax.wsdl.extensions.soap,javax.wsdl.extensions,javax.wsdl.extensions.s
> chema,javax.wsdl.factory,javax.wsdl,org.apache.woden.wsdl20.extensions.
> soap,org.apache.woden.wsdl20.xml,org.apache.woden.types,org.apache.wode
> n,org.apache.woden.wsdl20.extensions,org.apache.woden.wsdl20.enumeratio
> n,org.apache.woden.wsdl20,javax.xml.parsers";version="2.1.0.incubating-
> SNAPSHOT",org.apache.taverna.wsdl.soap;uses:="javax.xml.soap,org.w3c.do
> m,javax.xml.parsers,javax.xml.namespace,org.xml.sax,org.apache.taverna.
> wsdl.parser,org.apache.log4j,javax.xml.bind,javax.wsdl,javax.xml.transf
> orm.stream,javax.xml.transform.dom,javax.xml.transform,javax.xml,javax.
> xml.ws.handler,org.apache.ws.security,javax.xml.ws.handler.soap,org.apa
> che.ws.security.message,javax.xml.ws.soap,javax.xml.ws,javax.activation
> ";version="2.1.0.incubating-SNAPSHOT",org.apache.taverna.wsdl.xmlsplitt
> er;uses:="org.jdom.input,javax.xml.namespace,org.jdom.output,org.jdom,o
> rg.apache.taverna.wsdl.parser,javax.xml.bind,org.apache.log4j";version=
> "2.1.0.incubating-SNAPSHOT"
>
>
> Now this is hard to read.. so here it is reformatted:
>
> Export-Package:
> org.apache.taverna.wsdl.parser;
>
> uses:="javax.xml.namespace,
> org.apache.ws.commons.schema,
> org.w3c.dom.ls,
> org.xml.sax,
> org.w3c.dom,
> javax.xml.transform.stream,
> org.apache.ws.commons.schema.resolver,
> javax.xml.transform.dom,
> javax.xml.transform,
> javax.xml,
> javax.xml.soap,
> org.apache.ws.commons.schema.utils,
> javax.wsdl.extensions.soap12,
> javax.wsdl.xml,
> javax.wsdl.extensions.soap,
> javax.wsdl.extensions,
> javax.wsdl.extensions.s chema,
> javax.wsdl.factory,
> javax.wsdl,
> org.apache.woden.wsdl20.extensions.soap,
> org.apache.woden.wsdl20.xml,
> org.apache.woden.types,
> org.apache.woden,
> org.apache.woden.wsdl20.extensions,
> org.apache.woden.wsdl20.enumeration,
> org.apache.woden.wsdl20,
> javax.xml.parsers";
> version="2.1.0.incubating-SNAPSHOT",
>
>
> org.apache.taverna.wsdl.soap;
> uses:="javax.xml.soap,
> org.w3c.dom,
> javax.xml.parsers,
> javax.xml.namespace,
> org.xml.sax,
> org.apache.taverna.wsdl.parser,
> org.apache.log4j,
> javax.xml.bind,
> javax.wsdl,
> javax.xml.transform.stream,
> javax.xml.transform.dom,
> javax.xml.transform,
> javax.xml,
> javax.xml.ws.handler,
> org.apache.ws.security,
> javax.xml.ws.handler.soap,
> org.apache.ws.security.message,
> javax.xml.ws.soap,
> javax.xml.ws,
> javax.activation ";
> version="2.1.0.incubating-SNAPSHOT",
>
>
> org.apache.taverna.wsdl.xmlsplitter;
> uses:="org.jdom.input,
> javax.xml.namespace,
> org.jdom.output,
> org.jdom,
> org.apache.taverna.wsdl.parser,
> javax.xml.bind,
> org.apache.log4j";
> version="2.1.0.incubating-SNAPSHOT"
>
> ~
>
> meaning that we should be safe to try with Embed-Dependency - if we
> use the embed trick, then all those org.apache.ws and org.apache.woden
> stuff should disappear from "uses" and no longer be listed under
> Import-Package.
>
> On 11 January 2016 at 18:00, Dmitry <[email protected]> wrote:
>> Builds 95/96 are ok. (?)
>>
>> Dmitry
>>
>>
>> On 1/11/2016 6:42 PM, Stian Soiland-Reyes (JIRA) wrote:
>>>
>>> [
>>> https://issues.apache.org/jira/browse/TAVERNA-883?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
>>> ]
>>>
>>> Stian Soiland-Reyes updated TAVERNA-883:
>>> ----------------------------------------
>>> Labels: osgi (was: )
>>> Component/s: Taverna Commandline
>>>
>>>> Find valid OSGi bundles for Woden
>>>> ---------------------------------
>>>>
>>>> Key: TAVERNA-883
>>>> URL: https://issues.apache.org/jira/browse/TAVERNA-883
>>>> Project: Apache Taverna
>>>> Issue Type: Bug
>>>> Components: Taverna Commandline, Taverna Common Activities
>>>> Reporter: Stian Soiland-Reyes
>>>> Labels: osgi
>>>>
>>>> wsdl-activity uses Woden, which does not seem to have a valid OSGi bundle
>>>> dependency for org.apache.ws.security.*
>>>> This prevents the command line from starting up.
>>>> Perhaps updating the Woden dependency would work? Otherwise change to
>>>> embed the dependency from wsdl-activity, as with Embed-Dependency in
>>>> https://github.com/apache/incubator-taverna-common-activities/blob/master/taverna-beanshell-activity/pom.xml#L22
>>>> {code}
>>>>
>>>> stain@biggie:~/src/taverna/incubator-taverna-commandline/taverna-commandline-product$
>>>> mvn clean install
>>>> [INFO] Scanning for projects...
>>>> [INFO]
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [INFO] Building Apache Taverna Commandline Product
>>>> 3.1.0-incubating-SNAPSHOT
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [WARNING] The POM for
>>>> org.springframework:org.springframework.aop:jar:3.0.0.RC1 is missing, no
>>>> dependency information available
>>>> [WARNING] The POM for
>>>> org.springframework:org.springframework.core:jar:3.0.0.RC1 is missing, no
>>>> dependency information available
>>>> [WARNING] The POM for
>>>> org.springframework:org.springframework.asm:jar:3.0.0.RC1 is missing, no
>>>> dependency information available
>>>> [WARNING] The POM for
>>>> org.springframework:org.springframework.context:jar:3.0.0.RC1 is missing,
>>>> no
>>>> dependency information available
>>>> [INFO]
>>>> [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @
>>>> taverna-command-line-product ---
>>>> [INFO] Deleting
>>>> /home/stain/src/taverna/incubator-taverna-commandline/taverna-commandline-product/target
>>>> [INFO]
>>>> [INFO] --- buildnumber-maven-plugin:1.0-beta-3:create
>>>> (buildnumber-validate) @ taverna-command-line-product ---
>>>> [INFO] Storing buildNumber: 20160111T1738 at timestamp: 1452533883811
>>>> [INFO]
>>>> [INFO] ---
>>>> taverna-maven-plugin:0.2.1-incubating-SNAPSHOT:profile-generate
>>>> (default-profile-generate) @ taverna-command-line-product ---
>>>> [WARNING] Bundle : org.apache.woden:woden-core:jar:1.0M10 has unresolved
>>>> package dependencies:
>>>> [WARNING]
>>>> org.apache.ws.commons.schema.resolver;version="[2.2.0,3.0.0)"
>>>> [WARNING] org.apache.ws.commons.schema.utils;version="[2.2.0,3.0.0)"
>>>> [WARNING] org.apache.ws.commons.schema;version="[2.2.0,3.0.0)"
>>>> [WARNING] Bundle :
>>>> org.apache.taverna.commonactivities:taverna-wsdl-generic:jar:2.1.0-incubating-SNAPSHOT
>>>> has unresolved package dependencies:
>>>> [WARNING] org.apache.ws.security.message;version="[1.6.0,2.0.0)"
>>>> [WARNING] org.apache.ws.security;version="[1.6.0,2.0.0)"
>>>> {code}
>>>> Error on starting up:
>>>> {code}
>>>>
>>>> stain@biggie:~/src/taverna/incubator-taverna-commandline/taverna-commandline-product/target/apache-taverna-commandline-3.1.0-incubating-SNAPSHOT-dev/apache-taverna-commandline-3.1.0-incubating-SNAPSHOT$
>>>> sh executeworkflow.sh asdf
>>>> OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=400m;
>>>> support was removed in 8.0
>>>> The bundle
>>>> "org.apache.taverna.commonactivities.taverna-wsdl-activity_2.1.0.incubating-SNAPSHOT
>>>> [63]" could not be resolved. Reason: Missing Constraint: Import-Package:
>>>> org.apache.taverna.wsdl.parser; version="[2.1.0,3.0.0)"
>>>> {code}
>>>
>>>
>>>
>>> --
>>> This message was sent by Atlassian JIRA
>>> (v6.3.4#6332)
>>>
>>
>
>
>
> --
> Stian Soiland-Reyes
> Apache Taverna (incubating), Apache Commons RDF (incubating)
> http://orcid.org/0000-0001-9842-9718
--
Stian Soiland-Reyes
Apache Taverna (incubating), Apache Commons RDF (incubating)
http://orcid.org/0000-0001-9842-9718