Title: WSIFBinding - Namespace problems

Hi

I'm new to ServiceMix. I'm trying to get following scenario working:
A jms component listens to a topic and sends the message content
to a webservice, which is binded with the WSIFBinding component.
As webservice runs an example (echo) from axis.

If I send a jms message, the listener gets the input and tries
to forward it to the webservice. The problem is now,
that WSIF component cant match the destination operation due to
namespace conflicts.

I looked at the source code. the class org.servicemix.components.wsif.WSIFOperationMap
compares in getOperation(QName ...) the value of the activationSpec attribute
desinationOperation ("echoString") with the key in operationMap.

How can I set the Namespace, so that it will be include as Key in the Map?
Or did I miss something?

PS: If I set xmlns="" a default Namespace will be included.

Thanks
pepe


JVM: Sun 1.5.0_06
ServiceMix: 2.0.2
Axis: 1.3
tomcat: 5.5.12

here my config:

            <sm:activationSpec componentName="echoString" service="my:echoString" operation="echoString" >
                <sm:component>
                    <bean class="org.servicemix.components.wsif.WSIFBinding">
                        <property name="definitionResource" value="http://localhost:8080/axis/services/echo?wsdl"/>
                    </bean>
                </sm:component>
            </sm:activationSpec>

 
            <!-- Subscribe to a JMS destination -->
              <sm:activationSpec componentName="inputReceiver" service="my:inputReceiver"  destinationService="my:echoString"

                       destinationOperation="echoString" xmlns="http://soapinterop.org">
                <sm:component>
                  <bean xmlns="http://xbean.org/schemas/spring/1.0"
                        class="org.servicemix.components.jms.JmsInUsingJCABinding">
                        <property name="jcaContainer" ref="jencks"/>
                        <property name="activationSpec">
                          <bean class="org.activemq.ra.ActiveMQActivationSpec">
                            <property name="destination" value="test.source"/>
                            <property name="destinationType" value="javax.jms.Topic"/>
                          </bean>
                        </property>
                  </bean>
                </sm:component>
              </sm:activationSpec>


the error stacktrace:

org.servicemix.jbi.NoSuchOperationException: No such operation name: {http://soapinterop.org}echoString
        at org.servicemix.components.wsif.WSIFOperationMap.getOperationForExchange(WSIFOperationMap.java:61)
        at org.servicemix.components.wsif.WSIFBinding.transform(WSIFBinding.java:147)
        at org.servicemix.components.util.TransformComponentSupport.onMessageExchange(TransformComponentSupport.java:50)

        at org.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:588)
        at org.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:171)
        at org.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:225)
        at org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:291)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:595)

 

Reply via email to