L.S.,

What version of ServiceMix are you using? This looks like an issue that has been resolved with version 3.1... Do all of your SU pom.xml files actually have a dependency which is a JBI component (e.g. servicemix-jms, servicemix-bean)? If so, can you try adding <componentName>...</componentName> to the <properties/> section of your pom.xml file with the name of the target JBI component?

Gert

hm75 wrote:
I think, I understand what is happening. I get this problem when there are >2
service units of a particular type jms/pojo etc in a service assembly. I get
the error when packaging the service assembly. I think the error itself is
misleading:

org.apache.maven.lifecycle.LifecycleExecutionException: The service unit
myBean
does not have a dependency which is packaged as a jbi-component or a
project pro
perty 'componentName'

Are there any workarounds for this?

<beans xmlns:jms="http://servicemix.apache.org/jms/1.0";
       xmlns:test="http://test";
       xmlns:amq="http://activemq.org/config/1.0";>

    <jms:endpoint service="test:MyProviderService"
                  endpoint="myProvider"
role="provider" destinationStyle="queue"
                  jmsProviderDestinationName="queue/B"
                  connectionFactory="#connectionFactory"
                  />


    <amq:connectionFactory id="connectionFactory"
brokerURL="tcp://localhost:61618" />

    <!-- JMS ConnectionFactory from JNDI -
    <bean id="connectionFactory"
class="org.springframework.jndi.JndiObjectFactoryBean">
      <property name="jndiName" value="ConnectionFactory" />
    </bean>
    -->

</beans>

<beans xmlns:jms="http://servicemix.apache.org/jms/1.0";
       xmlns:test="http://test";
       xmlns:amq="http://activemq.org/config/1.0";>

    <jms:endpoint service="test:MyReplyService"
                  endpoint="myConsumer"
                  targetService="test:myReplyBeanService"
                  targetEndpoint="endpoint"
role="consumer" destinationStyle="queue"
                  jmsProviderDestinationName="queue/B"
                  defaultMep="http://www.w3.org/2004/08/wsdl/in-only";
                  defaultOperation="test:Echo"
                  connectionFactory="#connectionFactory" />


    <amq:connectionFactory id="connectionFactory"
brokerURL="tcp://localhost:61618" />

    <!-- JMS ConnectionFactory from JNDI -
    <bean id="connectionFactory"
class="org.springframework.jndi.JndiObjectFactoryBean">
      <property name="jndiName" value="ConnectionFactory" />
    </bean>
    -->

</beans>


Gert Vanthienen wrote:
Harsh,

Can you post your JMS xbean.xml file? I don't see a reason why you can not have a provider and consumer on the same queue. Would it be possible to also post the error stack trace itself?

Gert

hm75 wrote:
I have a simple servicemix/JMS usecase. I have a flow as follows:

JMSClient-->JMS Consumer SU-> Process 1(pojo)-> JMS Reply Queue
(Static)->
Process 2(Done)(pojo)

What is the best way to implement this? What I thought I could do was
create
a JMS Provider and JMS Consumer for the same queue ie. the JMS static JMS
reply queue in the above workflow. But I get an error deploying a
provider
and consumer for the same queue in a service assembly.

Can I use the wsdlResource property of a jms provider component to
forward
to a Pojo?

Thanks
Harsh



Reply via email to