Hi,
I have to admit that I'm new to ServiceMix, but this such a simple bundle does
not work and would appreciate it if someone can help out.
I'm using ServiceMix 5.3.0. My simple bundle contains a simplest HelloWord
JAX-WS and a CXF Endpoint on the client side to access the HelloWord service. A
route is defined for the CXF Endpoint to receive the request message content
from a file and direct the response message content to another file. At least,
this is the indent.
However, after deploying this bundle into the ServiceMix deploy folder, I got
the following log:
2015-01-15 15:48:58,314 | INFO | mix-5.3.0/deploy | fileinstall
| ?
? | 6 - org.apache.felix.fileinstall - 3.4.2 | Installing bundle
Jaxws-Cxf-Camel / 15.1.30.0
2015-01-15 15:48:58,361 | INFO | mix-5.3.0/deploy | BlueprintContainerImpl
| ?
? | 17 - org.apache.aries.blueprint.core - 1.4.1 | Bundle Jaxws-Cxf-Camel
is waiting for dependencies [(&(component=
camel-cxf)(objectClass=org.apache.camel.spi.ComponentResolver))]
2015-01-15 15:48:58,361 | INFO | mix-5.3.0/deploy | fileinstall
| ?
? | 6 - org.apache.felix.fileinstall - 3.4.2 | Started bundle:
file:/C:/Java/apache-servicemix-5.3.0/deploy/Jaxws-Cx
f-Camel-15.01.30.0.jar
and the bundle is put in the "GracePeriod" state. If I interpreted the log
correctly, it seems to say that the dependency
org.apache.camel.spi.ComponentResolver in component camel-cxf is not available.
Am I right?
In fact that I did check my Maven repository that it's the
org.apache.camel:camel-core that contains the class
org.apache.camel.spi.ComponentResolver. Why is the framework pointing to
camel-cxf component?
My simple bundle did contain org.apache.camel.spi package in the
Import-Package. Furthermore, I did check that both camel-cxf and camel-core are
"Active" under the "state" column and camel-cxf has a "Created" under the
"Blueprint" column while camel-core is blank. What am I doing wrong?
The following is the content of my blueprint.xml:
<?xml version="1.0" encoding="UTF-8"?>
<blueprint
xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/blueprint/jaxws"
xmlns:camel-cxf="http://camel.apache.org/schema/blueprint/cxf"
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws
http://cxf.apache.org/schemas/blueprint/jaxws.xsd">
<jaxws:endpoint id="helloWorld2"
implementor="mil.army.security.ts3.samples.osgi.jaxws.cxf.HelloWorld2Impl"
address="/TS3HelloWorld2">
</jaxws:endpoint>
<camel-cxf:cxfEndpoint
xmlns:ts3="http://cxf.jaxws.osgi.samples.ts3.security.army.mil/"
id="helloWorld2Client"
address="http://localhost:8181/cxf/HelloWorld2"
wsdlURL="wsdl/HelloWorld2.wsdl"
serviceName="ts3:HelloWorldImplService"
endpointName="ts3:HelloWorldImplPort">
<camel-cxf:properties>
<entry key="dataFormat" value="PAYLOAD"/>
</camel-cxf:properties>
</camel-cxf:cxfEndpoint>
<camelContext xmlns="http://camel.apache.org/schema/blueprint">
<route>
<from uri="file://c:/temp?fileName=HelloWorld2Request.xml"/>
<inOut uri="camel-cxf:bean:helloWorld2Client"/>
<to uri="file://c:/temp?fileName=HelloWorld2Response.xml"/>
</route>
</camelContext>
</blueprint>
Thanks in advance,
Gang