You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Benson Margulies <be...@basistech.com> on 2015/09/02 00:02:47 UTC
A karaf assembly with CXF in it walks into a bar
Below you will find an entire POM for making a Karaf assembly with CXF
3.1.1 in it.
It is complaining about javax.enterprise.context.
I suppose that there's some additional boot feature I need here, but,
which one, and why doesn't cxf have feature dependencies to make it
work automatically?
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.karaf.tooling:karaf-maven-plugin:4.0.1:assembly
(default-assembly) on project rosapi-assembly-min-test: Unable to
build assembly: Unable to resolve root: missing requirement [root]
osgi.identity; osgi.identity=cxf-http; type=karaf.feature;
version=3.1.1 [caused by: Unable to resolve cxf-http/3.1.1: missing
requirement [cxf-http/3.1.1] osgi.identity;
osgi.identity=org.apache.cxf.cxf-rt-transports-http; type=osgi.bundle;
version="[3.1.1,3.1.1]"; resolution:=mandatory [caused by: Unable to
resolve org.apache.cxf.cxf-rt-transports-http/3.1.1: missing
requirement [org.apache.cxf.cxf-rt-transports-http/3.1.1]
osgi.wiring.package;
filter:="(&(osgi.wiring.package=javax.servlet)(version>=0.0.0)(!(version>=4.0.0)))"]]
-> [Help 1]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>rosapi-assemblies</artifactId>
<groupId>com.basistech.ws</groupId>
<version>1.5.0-SNAPSHOT</version>
</parent>
<artifactId>rosapi-assembly-min-test</artifactId>
<name>rosapi-assembly-min-test</name>
<packaging>karaf-assembly</packaging>
<properties>
<skip-dependency-convergence>true</skip-dependency-convergence>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>framework</artifactId>
<version>${karaf-version}</version>
<type>kar</type>
</dependency>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>standard</artifactId>
<version>${karaf-version}</version>
<classifier>features</classifier>
<type>xml</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf.karaf</groupId>
<artifactId>apache-cxf</artifactId>
<version>${cxf-version}</version>
<classifier>features</classifier>
<type>xml</type>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
<resource>
<directory>src/main/filtered-resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<finalName>${project.artifactId}</finalName>
<bootFeatures>
<feature>bundle</feature>
<feature>config</feature>
<feature>diagnostic</feature>
<feature>feature</feature>
<feature>jaas</feature>
<feature>shell</feature>
<feature>log</feature>
<feature>management</feature>
<feature>package</feature>
<feature>shell-compat</feature>
<feature>ssh</feature>
<feature>system</feature>
<feature>wrap</feature>
<feature>jolokia</feature>
<feature>war</feature>
<feature>http</feature>
</bootFeatures>
<startupFeatures>
<feature>cxf-jaxrs</feature>
</startupFeatures>
<archiveZip>false</archiveZip>
</configuration>
</plugin>
</plugins>
</build>
</project>
Re: A karaf assembly with CXF in it walks into a bar
Posted by Benson Margulies <be...@basistech.com>.
On Wed, Sep 2, 2015 at 2:39 AM, Guillaume Nodet <gn...@apache.org> wrote:
> So the startup stage is *before* the boot stage.
> Is that really what you need ?
Well, that explains *that*. I somehow got them backwards. Time for
another doc patch.
Thanks!
I'll never need a startup feature.
>
> I think moving the cxf-jaxrs feature to boot stage would work much better
> as it would have the servlet apis from the war feature.
>
> Fwiw, the cxf features are not yet validated with the new Karaf 4 maven
> plugin, so they may not be transitively closed.
I have a working prototype where everything is 'boot'.
>
> 2015-09-02 0:02 GMT+02:00 Benson Margulies <be...@basistech.com>:
>
>> Below you will find an entire POM for making a Karaf assembly with CXF
>> 3.1.1 in it.
>>
>> It is complaining about javax.enterprise.context.
>>
>> I suppose that there's some additional boot feature I need here, but,
>> which one, and why doesn't cxf have feature dependencies to make it
>> work automatically?
>>
>>
>> [INFO]
>> ------------------------------------------------------------------------
>> [ERROR] Failed to execute goal
>> org.apache.karaf.tooling:karaf-maven-plugin:4.0.1:assembly
>> (default-assembly) on project rosapi-assembly-min-test: Unable to
>> build assembly: Unable to resolve root: missing requirement [root]
>> osgi.identity; osgi.identity=cxf-http; type=karaf.feature;
>> version=3.1.1 [caused by: Unable to resolve cxf-http/3.1.1: missing
>> requirement [cxf-http/3.1.1] osgi.identity;
>> osgi.identity=org.apache.cxf.cxf-rt-transports-http; type=osgi.bundle;
>> version="[3.1.1,3.1.1]"; resolution:=mandatory [caused by: Unable to
>> resolve org.apache.cxf.cxf-rt-transports-http/3.1.1: missing
>> requirement [org.apache.cxf.cxf-rt-transports-http/3.1.1]
>> osgi.wiring.package;
>>
>> filter:="(&(osgi.wiring.package=javax.servlet)(version>=0.0.0)(!(version>=4.0.0)))"]]
>> -> [Help 1]
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>> <project xmlns="http://maven.apache.org/POM/4.0.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
>> http://maven.apache.org/xsd/maven-4.0.0.xsd">
>> <modelVersion>4.0.0</modelVersion>
>> <parent>
>> <artifactId>rosapi-assemblies</artifactId>
>> <groupId>com.basistech.ws</groupId>
>> <version>1.5.0-SNAPSHOT</version>
>> </parent>
>> <artifactId>rosapi-assembly-min-test</artifactId>
>> <name>rosapi-assembly-min-test</name>
>> <packaging>karaf-assembly</packaging>
>>
>> <properties>
>> <skip-dependency-convergence>true</skip-dependency-convergence>
>> </properties>
>> <dependencies>
>> <dependency>
>> <groupId>org.apache.karaf.features</groupId>
>> <artifactId>framework</artifactId>
>> <version>${karaf-version}</version>
>> <type>kar</type>
>> </dependency>
>> <dependency>
>> <groupId>org.apache.karaf.features</groupId>
>> <artifactId>standard</artifactId>
>> <version>${karaf-version}</version>
>> <classifier>features</classifier>
>> <type>xml</type>
>> <scope>runtime</scope>
>> </dependency>
>>
>> <dependency>
>> <groupId>org.apache.cxf.karaf</groupId>
>> <artifactId>apache-cxf</artifactId>
>> <version>${cxf-version}</version>
>> <classifier>features</classifier>
>> <type>xml</type>
>> <scope>compile</scope>
>> </dependency>
>>
>> </dependencies>
>> <build>
>> <resources>
>> <resource>
>> <directory>src/main/resources</directory>
>> <filtering>false</filtering>
>> <includes>
>> <include>**/*</include>
>> </includes>
>> </resource>
>> <resource>
>> <directory>src/main/filtered-resources</directory>
>> <filtering>true</filtering>
>> <includes>
>> <include>**/*</include>
>> </includes>
>> </resource>
>> </resources>
>> <plugins>
>> <plugin>
>> <groupId>org.apache.karaf.tooling</groupId>
>> <artifactId>karaf-maven-plugin</artifactId>
>> <extensions>true</extensions>
>> <configuration>
>> <finalName>${project.artifactId}</finalName>
>> <bootFeatures>
>> <feature>bundle</feature>
>> <feature>config</feature>
>> <feature>diagnostic</feature>
>> <feature>feature</feature>
>> <feature>jaas</feature>
>> <feature>shell</feature>
>> <feature>log</feature>
>> <feature>management</feature>
>> <feature>package</feature>
>> <feature>shell-compat</feature>
>> <feature>ssh</feature>
>> <feature>system</feature>
>> <feature>wrap</feature>
>> <feature>jolokia</feature>
>> <feature>war</feature>
>> <feature>http</feature>
>> </bootFeatures>
>> <startupFeatures>
>> <feature>cxf-jaxrs</feature>
>> </startupFeatures>
>> <archiveZip>false</archiveZip>
>> </configuration>
>> </plugin>
>> </plugins>
>> </build>
>> </project>
>>
Re: A karaf assembly with CXF in it walks into a bar
Posted by Guillaume Nodet <gn...@apache.org>.
So the startup stage is *before* the boot stage.
Is that really what you need ?
I think moving the cxf-jaxrs feature to boot stage would work much better
as it would have the servlet apis from the war feature.
Fwiw, the cxf features are not yet validated with the new Karaf 4 maven
plugin, so they may not be transitively closed.
2015-09-02 0:02 GMT+02:00 Benson Margulies <be...@basistech.com>:
> Below you will find an entire POM for making a Karaf assembly with CXF
> 3.1.1 in it.
>
> It is complaining about javax.enterprise.context.
>
> I suppose that there's some additional boot feature I need here, but,
> which one, and why doesn't cxf have feature dependencies to make it
> work automatically?
>
>
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] Failed to execute goal
> org.apache.karaf.tooling:karaf-maven-plugin:4.0.1:assembly
> (default-assembly) on project rosapi-assembly-min-test: Unable to
> build assembly: Unable to resolve root: missing requirement [root]
> osgi.identity; osgi.identity=cxf-http; type=karaf.feature;
> version=3.1.1 [caused by: Unable to resolve cxf-http/3.1.1: missing
> requirement [cxf-http/3.1.1] osgi.identity;
> osgi.identity=org.apache.cxf.cxf-rt-transports-http; type=osgi.bundle;
> version="[3.1.1,3.1.1]"; resolution:=mandatory [caused by: Unable to
> resolve org.apache.cxf.cxf-rt-transports-http/3.1.1: missing
> requirement [org.apache.cxf.cxf-rt-transports-http/3.1.1]
> osgi.wiring.package;
>
> filter:="(&(osgi.wiring.package=javax.servlet)(version>=0.0.0)(!(version>=4.0.0)))"]]
> -> [Help 1]
>
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> <project xmlns="http://maven.apache.org/POM/4.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <parent>
> <artifactId>rosapi-assemblies</artifactId>
> <groupId>com.basistech.ws</groupId>
> <version>1.5.0-SNAPSHOT</version>
> </parent>
> <artifactId>rosapi-assembly-min-test</artifactId>
> <name>rosapi-assembly-min-test</name>
> <packaging>karaf-assembly</packaging>
>
> <properties>
> <skip-dependency-convergence>true</skip-dependency-convergence>
> </properties>
> <dependencies>
> <dependency>
> <groupId>org.apache.karaf.features</groupId>
> <artifactId>framework</artifactId>
> <version>${karaf-version}</version>
> <type>kar</type>
> </dependency>
> <dependency>
> <groupId>org.apache.karaf.features</groupId>
> <artifactId>standard</artifactId>
> <version>${karaf-version}</version>
> <classifier>features</classifier>
> <type>xml</type>
> <scope>runtime</scope>
> </dependency>
>
> <dependency>
> <groupId>org.apache.cxf.karaf</groupId>
> <artifactId>apache-cxf</artifactId>
> <version>${cxf-version}</version>
> <classifier>features</classifier>
> <type>xml</type>
> <scope>compile</scope>
> </dependency>
>
> </dependencies>
> <build>
> <resources>
> <resource>
> <directory>src/main/resources</directory>
> <filtering>false</filtering>
> <includes>
> <include>**/*</include>
> </includes>
> </resource>
> <resource>
> <directory>src/main/filtered-resources</directory>
> <filtering>true</filtering>
> <includes>
> <include>**/*</include>
> </includes>
> </resource>
> </resources>
> <plugins>
> <plugin>
> <groupId>org.apache.karaf.tooling</groupId>
> <artifactId>karaf-maven-plugin</artifactId>
> <extensions>true</extensions>
> <configuration>
> <finalName>${project.artifactId}</finalName>
> <bootFeatures>
> <feature>bundle</feature>
> <feature>config</feature>
> <feature>diagnostic</feature>
> <feature>feature</feature>
> <feature>jaas</feature>
> <feature>shell</feature>
> <feature>log</feature>
> <feature>management</feature>
> <feature>package</feature>
> <feature>shell-compat</feature>
> <feature>ssh</feature>
> <feature>system</feature>
> <feature>wrap</feature>
> <feature>jolokia</feature>
> <feature>war</feature>
> <feature>http</feature>
> </bootFeatures>
> <startupFeatures>
> <feature>cxf-jaxrs</feature>
> </startupFeatures>
> <archiveZip>false</archiveZip>
> </configuration>
> </plugin>
> </plugins>
> </build>
> </project>
>