camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Charles Moulliard <cmoulli...@gmail.com>
Subject camel-cxf feature (cxf + osgi) - Feature file missing dependency
Date Fri, 20 Nov 2009 10:27:35 GMT
The camel-cxf feature defined in the last feature file snapshot
contains the list of dependencies (= bundles) required by camel to run
CXF

  <feature name="camel-cxf" version="2.1-SNAPSHOT">
    <bundle>mvn:commons-pool/commons-pool/1.4</bundle>
    <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
    <bundle>mvn:org.springframework/spring-jms/2.5.6.SEC01</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.asm/2.2.3_3</bundle>
    <bundle>mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.1.2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jetty-bundle/6.1.14_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-codec/1.3_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jdom/1.1_2</bundle>
    <bundle>mvn:org.codehaus.jettison/jettison/1.1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.7.0_3</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.bcel/5.2_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xalan/2.7.1_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xerces/2.9.1_3</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlbeans/2.4.0_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlsec/1.4.3_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlresolver/1.2_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.woodstox/3.2.8_1</bundle>
    <bundle>mvn:org.apache.ws.commons.schema/XmlSchema/1.4.5</bundle>
    <bundle>mvn:commons-lang/commons-lang/2.4</bundle>
    <bundle>mvn:commons-collections/commons-collections/3.2.1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/2.7.7_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.oro/2.0.8_3</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.velocity/1.6.2_3</bundle>
    <bundle>mvn:org.apache.ws.commons.axiom/axiom-impl/1.2.8</bundle>
    <bundle>mvn:org.apache.ws.commons.axiom/axiom-api/1.2.8</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax.mail/1.4.1_2</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.neethi/2.0.4_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.abdera/0.4.0-incubating_3</bundle>
    <bundle>mvn:org.apache.geronimo.specs/geronimo-jaxws_2.1_spec/1.0</bundle>
    <bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
    <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.saaj-api-1.3/1.4-SNAPSHOT</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_2</bundle>
    <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jsr311-api-1.0/1.3.0</bundle>
    <bundle>mvn:org.apache.geronimo.specs/geronimo-ws-metadata_2.0_spec/1.1.2</bundle>
    <bundle>mvn:org.apache.cxf/cxf-bundle/2.2.4</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-io/1.3.2_3</bundle>
    <feature version="2.1-SNAPSHOT">camel-spring</feature>
    <bundle>mvn:org.apache.camel/camel-cxf/2.1-SNAPSHOT</bundle>
  </feature>

Nevertheless, an important dependency has been lost as since CXF 2.2.4
release, the CXF Transport OSGI classes have been moved from
servicemix project to CXF. These classes which includes OSGI Servlet
require web bundles. Here is the list of those required bundles.

    <feature name="HTTP">
        <config name="org.ops4j.pax.web">
          org.osgi.service.http.port=8080
        </config>
        <bundle>mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.1.2</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jetty-bundle/6.1.14_1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-api/0.7.1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-spi/0.7.1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-runtime/0.7.1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-jetty/0.7.1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-extender-war/0.7.1</bundle>
        <bundle>mvn:org.ops4j.pax.web/pax-web-extender-whiteboard/0.7.1</bundle>
    </feature>

As they are already defined in Apache Felix Karaf feature file, I
propose to add only a reference to the HTTP feature of Karaf

  <feature name="camel-cxf" version="2.1-SNAPSHOT">
    <feature>HTTP</feature>
     .......
  </feature>

Remark : I have created a patch for Apache Felix Karaf feature file to
include two important bundles which are used to deploy WAR and
register an OSGI servlet (see this ticket for more info :
https://issues.apache.org/jira/browse/FELIX-1881)

Regards,

Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer

*****************************
blog : http://cmoulliard.blogspot.com
twitter : http://twitter.com/cmoulliard
Linkedlin : http://www.linkedin.com/in/charlesmoulliard

Apache Camel Group :
http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm

Mime
View raw message