This is unrelated to the DOSGi feature. A feature only defines bundles and configs. The libraries are used outside OSGi. I hope we can transition to not use all these library defs at all in karaf. For now unfortunately it is a bit additional setup for a custom distro.

Christian

On 03.02.2017 10:33, nino martinez wael wrote:
You hit the spot again Christian. Thanks a lot. I no longer have a sword
hanging over my neck.

BUT, why does the karaf-maven-plugin(4.0.8) not include these per default?

I mean people do not have any chance of this when depending on the dosgi
feature (or did I miss something crucial?)..

regards Nino

On Fri, Feb 3, 2017 at 10:10 AM, nino martinez wael <
[email protected]> wrote:

yes it is a "custom" distro, custom being it includes my feature.. Im not
tying into anthing specific in my code in regards to contextfactory..

my assembly def (I will add the libs you mentioned):

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns="http://maven.apache.org/POM/4.0.0";
          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>osgi-dialer</artifactId>
         <groupId>dk.netdesign.osgi-dialer</groupId>
         <version>1.18-SNAPSHOT</version>
     </parent>

     <groupId>dk.netdesign.osgi-dialer</groupId>
     <artifactId>osgi-dialer-karaf-assembly</artifactId>
     <version>1.18-SNAPSHOT</version>
     <packaging>karaf-assembly</packaging>

     <name>osgi-dialer-karaf-assembly</name>

     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     </properties>


     <dependencies>
         <dependency>

             <groupId>org.apache.karaf.features</groupId>
             <artifactId>framework</artifactId>
             <version>${karaf.version}</version>
             <scope>compile</scope>
             <type>kar</type>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.features</groupId>
             <artifactId>framework</artifactId>
             <classifier>features</classifier>
             <type>xml</type>
             <scope>runtime</scope>
             <version>${karaf.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.features</groupId>
             <artifactId>standard</artifactId>
             <classifier>features</classifier>
             <type>xml</type>
             <version>${karaf.version}</version>
             <scope>runtime</scope>
         </dependency>
         <!--<dependency>-->
             <!--<groupId>org.apache.karaf.features</groupId>-->
             <!--<artifactId>spring</artifactId>-->
             <!--<classifier>features</classifier>-->
             <!--<type>xml</type>-->
             <!--<scope>runtime</scope>-->
             <!--<version>${karaf.version}</version>-->
         <!--</dependency>-->
         <dependency>
             <groupId>org.apache.karaf.features</groupId>
             <artifactId>enterprise</artifactId>
             <classifier>features</classifier>
             <type>xml</type>
             <scope>runtime</scope>
             <version>${karaf.version}</version>
         </dependency>
         <!--<dependency>-->
             <!--<groupId>org.apache.cxf.dosgi</groupId>-->
             <!--<artifactId>cxf-dosgi</artifactId>-->
             <!--<version>2.0.0</version>-->
             <!--<classifier>features</classifier>-->
             <!--<type>xml</type>-->
             <!--<scope>runtime</scope>-->
         <!--</dependency>-->
         <!-- Netdesign Features -->

         <dependency>
             <artifactId>osgi-dialer-karaf</artifactId>
                 <groupId>dk.netdesign.osgi-dialer</groupId>
             <classifier>features</classifier>
             <type>xml</type>
             <scope>provided</scope>
             <version>1.18-SNAPSHOT</version>
         </dependency>


     </dependencies>


     <build>
         <plugins>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-dependency-plugin</artifactId>
                 <version>3.0.0</version>
             </plugin>

             <!-- karaf-maven-plugin will call both install-kar and 
instance-create-archive goals -->
             <plugin>
                 <groupId>org.apache.karaf.tooling</groupId>
                 <artifactId>karaf-maven-plugin</artifactId>
                 <version>${karaf.version}</version>
                 <extensions>true</extensions>

                 <configuration>
                     <!-- no startupFeatures -->
                     <aggregateFeatures>true</aggregateFeatures>
                     <targetFile>dialer-karaf</targetFile>
                     <bootFeatures>
                         <feature>webconsole</feature>
                         <feature>standard</feature>
                         <feature>management</feature>
                         <feature>config</feature>
                         <feature>package</feature>
                         <feature>kar</feature>
                         <feature>ssh</feature>
                     </bootFeatures>
                     <installedFeatures>
                         <feature>wrapper</feature>
                         <feature>osgi-dialer</feature>
                     </installedFeatures>
                 </configuration>
             </plugin>
         </plugins>
     </build>
</project>


On Fri, Feb 3, 2017 at 9:52 AM, Christian Schneider <
[email protected]> wrote:

Oh .. do you create a custom karaf distro?

In that case do not forget to add the libraries section:
https://github.com/apache/karaf/blob/master/assemblies/apach
e-karaf/pom.xml#L192-L209

This installs the overrides for several of the jdk built in spec impls.
For newer jdks we could probably live without many of the overrides but we
did not yes adapt karaf and the features.

Christian


On 03.02.2017 09:07, nino martinez wael wrote:

Hi Guys

Im in quite a peril here.

On in my pax exam test everythings fine. BUT after building my karaf
assembly and moving to offline systems, this shows up:
[java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory
not
found by org.apache.cxf.cxf-rt-transports-http [165]]

Trying a manual approch, thinking that cxf-rt-transports-http had some
dynamic import resolving to

<bundle>mvn:org.apache.servicemix.bundles/org.apache.service
mix.bundles.jaxb-impl/2.2.11_1</bundle>

I then forced that bundle to be installed before touching DOSGI / CXF.
It has made no change.

Interestingly enough the only mentions for the servix mix bundle are
these:

Importing Bundles(on both working systems) org.apache.cxf.cxf-core
(140) <http://localhost:8181/system/console/bundles/140>
org.apache.servicemix.bundles.jaxb-xjc (201)
<http://localhost:8181/system/console/bundles/201>




--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com



--
Best regards / Med venlig hilsen
Nino Martinez





--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com

Reply via email to