Hi Radomir,

you have to add org.apache.servicemix.http in the <Import-Package/> statement of the bundle.

Regards
JB

On 09/08/2011 01:51 PM, Radomir Kadlec wrote:
Hello,
*is it possible to deploy http-consumer as OSGI bundle?*
I use the Servicemix 4.3.0 without modifications.

I tried the examples *cxf-wsdl-first-osgi-package* and the example from the
Internet documentation:
http://servicemix.apache.org/smx4/creating-an-osgi-bundle-for-deploying-jbi-endpoints.html.
Both are working fine.

But when I add a http-consumer in the configuration, it comes always this
exception during deploy:
*ClassNotFoundException:
org.apache.servicemix.http.endpoints.HttpConsumerEndpoint*

Clearly I added the http consumer in the beans.xml and in the pom.xml.

The part of my *beans.xml *file:

<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xmlns:file="http://servicemix.apache.org/file/1.0";
        <b>xmlns:http="http://servicemix.apache.org/http/1.0"*
        xmlns:isl="http://aura.cz/isl";
        xsi:schemaLocation="
          http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans.xsd
          http://servicemix.apache.org/file/1.0
          http://servicemix.apache.org/file/1.0/servicemix-file.xsd
          *http://servicemix.apache.org/http/1.0
          http://servicemix.apache.org/http/1.0/servicemix-http.xsd*";>

     <http:consumer
         service="isl:http"
         endpoint="http"
         locationURI="http://localhost:8192/pokus/";
         targetService="isl:sender"
         targetEndpoint="sender" />

     <bean class="org.apache.servicemix.common.osgi.EndpointExporter" />

</beans>

The part of my *pom.xml* file:

<Import-Package>
org.apache.servicemix.file,*org.apache.servicemix.http*,org.apache.servicemix.common.osgi,*
</Import-Package>

Do You see some mistakes in this configuration?
I suppose, the namespaces and package names are correct.

I can not understand too, which dependencies come in the *<dependencies>*
part and which in *<Import-Package>*.
Why is the *org.apache.servicemix.bean* package in both of them and the
org.apache.servicemix.file only in *Import-Package* part  in the
documentation example (link see above)?
There are no Java classes in my project and so I suppose, it is not needed
to have it in the<dependencies>  part.
And even if I have Java classes with imports from this package, I shall put
it in the<dependencies>  part with the *<provided>* flag.
What do You mean, is it so?

Thank You,
Radomir Kadlec

--
View this message in context: 
http://servicemix.396122.n5.nabble.com/HTTP-consumer-as-OSGI-bundle-tp4782151p4782151.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com

Reply via email to