Guillaume,

Thank you for this answer.

How can I verify what is happening after drools receives the message ?
I have added some breakpoints in sm-jms coponent in MultiplexingConsumer and MultiplexingProvider both in onMessage and process methods but they are never called... That is why I was thinking the message was not delivered to sm-jms component...

During the SU deployment, I get the following message, is it an error (no description found) ? 2006-04-03 10:37:14,336 : ComponentContextImpl.activateEndpoint : Component: servicemix-jms activated endpoint: {urn:servicemix:jonas:example1}example1JmsProvider : example1JmsProvider 2006-04-03 10:37:14,337 : BaseComponent.getServiceDescription : Querying service description for ServiceEndpoint[service={urn:servicemix:jonas:example1}example1JmsProvider,endpoint=example1JmsProvider] 2006-04-03 10:37:14,340 : BaseComponent.getServiceDescription : No description found for {urn:servicemix:jonas:example1}example1JmsProvider:example1JmsProvider 2006-04-03 10:37:14,341 : EndpointRegistry.retrieveInterfacesFromDescription : Endpoint ServiceEndpoint[service={urn:servicemix:jonas:example1}example1JmsProvider,endpoint=example1JmsProvider] has no service description 2006-04-03 10:37:15,429 : BaseServiceUnitManager.start : Service unit started

Do you think the su description files I sent you in the previous mail are correct ?

Thanks
Charles

Guillaume Nodet wrote:
It seems fine to me.  The drools component replies with a DONE status
that is accepted by the http component.
I think the accept traces for the drools component are not shown
because it implements the MessageExchangeListener interface that
bypasses them.

Cheers,
Guillaume Nodet

On 3/31/06, Charles Souillard <[EMAIL PROTECTED]> wrote:
Hi all,

I am trying to create my own example :

client   ---- HTTP ---> sm-http  ------>  drools (sm-lwcontainer)
------->  sm-jms   ------> client waiting on a queue

Nothing is happening as if one of the routing was not done...
I have activated the traces : is it normal that the last exchange we can
see is 'accept" instead of 'sent' ?

I have added traces into drools component and none of them is printed...
I think drools component never get the message but as I am not sure to
well interpret traces..

Can you tell me what is happening in SM thanks to traces ?
Is one of my SU wrong ?

Thanks,
Charles

Traces I get :

DEBUG - JCLLoggerAdapter.debug(121) | REQUEST
/serviceMisOnJOnASExample1/ on [EMAIL PROTECTED]
DEBUG - JCLLoggerAdapter.debug(121) | servlet=jbiServlet
DEBUG - JCLLoggerAdapter.debug(121) | chain=null
DEBUG - JCLLoggerAdapter.debug(121) | servelet holder=jbiServlet
DEBUG - DeliveryChannelImpl.traceMessageExchange(342) | Sent:
MessageExchange[
  id: ID:frec445363-47743-1143815513807-2:0
  status: Active
  role: consumer
  service: {urn:servicemix:jonas:example1}droolsRouter
  in: <?xml version="1.0" encoding="UTF-8"?><in>example1</in>
]
DEBUG - JCLLoggerAdapter.debug(121) | continuation
[EMAIL PROTECTED]
DEBUG - DeliveryChannelImpl.traceMessageExchange(342) | Sent:
MessageExchange[
  id: ID:frec445363-47743-1143815513807-2:0
  status: Done
  role: provider
  service: {urn:servicemix:jonas:example1}droolsRouter
  endpoint: droolsRouter
  in: <?xml version="1.0" encoding="UTF-8"?><in>example1</in>
]
DEBUG - DeliveryChannelImpl.accept(369) | Accepting
ID:frec445363-47743-1143815513807-2:0 in DeliveryChannel{servicemix-http}
DEBUG - DeliveryChannelImpl.traceMessageExchange(342) | Accepted:
MessageExchange[
  id: ID:frec445363-47743-1143815513807-2:0
  status: Done
  role: consumer
  service: {urn:servicemix:jonas:example1}droolsRouter
  endpoint: droolsRouter
  in: <?xml version="1.0" encoding="UTF-8"?><in>example1</in>
]



Here are my SUs :

*sm-http su*

<beans xmlns:http="http://servicemix.apache.org/http/1.0";
       xmlns:example1="urn:servicemix:jonas:example1">
<!--  soap="true" -->
    <http:endpoint service="example1:droolsRouter"
                   endpoint="example1DroolsRouter"
                   role="consumer"

locationURI="http://localhost:8192/serviceMisOnJOnASExample1/";
                   defaultMep="http://www.w3.org/2004/08/wsdl/in-only";
                   />

</beans>

*drools-su
*
<beans xmlns="http://xbean.org/schemas/spring/1.0";
    xmlns:spring="http://xbean.org/schemas/spring/1.0";
    xmlns:sm="http://servicemix.apache.org/config/1.0";
    xmlns:example1="urn:servicemix:jonas:example1">

    <sm:serviceunit id="jbi">
        <sm:activationSpecs>
                <!--  endpoint="example1DroolsRouter" -->
            <sm:activationSpec componentName="droolsRouter"
service="example1:droolsRouter">
                <sm:component>
                    <bean

class="org.apache.servicemix.components.drools.DroolsComponent">
                        <property name="ruleBaseResource"

value="file:///home/souillac/workspace/ServiceMixOnJOnAS/example1/drools-engine-su/rulebase.xml"
/>
                    </bean>
                </sm:component>
            </sm:activationSpec>
        </sm:activationSpecs>
    </sm:serviceunit>

</beans>


*jms-su
*
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0";
    xmlns:example1="urn:servicemix:jonas:example1">
    <!--         QCF    connectionFactory    soap="true"   -->
    <jms:endpoint service="example1:example1JmsProvider"
        endpoint="example1JmsProvider"
        role="provider"
        destinationStyle="queue"
        jmsProviderDestinationName="ServiceMixOnJOnASExample1Queue"
        jndiConnectionFactoryName="JQCF"  />


</beans>




Reply via email to