Prasanta,

Your servicemix-drools SU has xmlns:foo="urn:logicblaze:soa:loanbrokers", while the servicemix-http SU has xmlns:foo="urn:logicblaze:soa:loanbroker".
Can you try if it works by specifying the same URI on both?

Gert

Sahoo, Prasanta wrote:
Hi Gert,
Hi Gert,

Thank you for quick reply. I am using JMS SU configured to DROOL SU.
When I run my JMS client, it should execute Drool rule. I have attached
my both xbean.xml for JMS and Drool.

Regards,
Prasanta


-----Original Message-----
From: Gert Vanthienen [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 19, 2007 2:56 PM
To: [email protected]
Cc: Sahoo, Prasanta
Subject: Re: servicemix Drool engine Issue

Prasanta,


First of all, I would like to propose to continue this thread on the user mailing list, so more people can take advantage when we find a solution... Be sure to check the spelling and namespace of the myDroolsService you're routing to. If you don't see any typos, please post the contents

of your xbean.xml files.


Gert

pksahoo wrote:
Hi Gert,

Thank you for reply. I am getting same error that "The Service Name
specified for routing, but can't find it registered".

Please see below error details:

14:01:08,880 | WARN  | pool-component.servicemix-jms-thread-6 |
DefaultBroker            | rvicemix.jbi.nmr.DefaultBroker  341 |
ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing, but
can't find it registered
14:01:08,880 | WARN  | pool-component.servicemix-jms-thread-6 |
DefaultBroker            | rvicemix.jbi.nmr.DefaultBroker  341 |
ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing, but
can't find it registered
14:01:08,880 | ERROR | pool-component.servicemix-jms-thread-6 |
plexingConsumerProcessor | ultiplexingConsumerProcessor$1  100 | Error
while
handling jms message
javax.jbi.messaging.MessagingException: Could not find route for
exchange:
InOut[
  id: ID:10.16.106.91-1134524da8a-5:4
  status: Active
  role: provider
  service: {urn:logicblaze:soa:loanbroker}myDroolsService
  operation: {urn:/HelloWorld2.wsdl}Hello
  in: <?xml version="1.0" encoding="UTF-8"?><HelloRequest
xmlns="urn:/HelloWorld2.wsdl"
xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>

Pleas advise.

Regards,
Prasanta



Gert Vanthienen wrote:
Prasanta,


At this moment, there is no servicemix-drools SU archetype.  Please
file a
JIRA to have it created...

For now, you can just use the plain SU archetype and go from there.
Have
a look at

http://incubator.apache.org/servicemix/what-is-a-jbi-su-and-how-do-i-cre
ate-one.html,
but use -DarchetypeArtifactId=servicemix-service-unit instead.

After that is done, you add a dependency to servicemix-drools to the
pom.xml that has been generated:
<dependency>
    <groupId>org.apache.servicemix</groupId>
    <artifactId>servicemix-http</artifactId>
    <version>${servicemix-version}</version>
</dependency>

Now all you have to do is modify your xbean.xml to configure the
Drools
service endpoints.  Maven will take care of packaging it a SU
targeted at
servicemix-drools.


Gert



pksahoo wrote:
How can I create a service unit to use the drools rules engine?
Please
share the maven archetype and, if possible, an example

My JMS client is cnfigured with servicemix drool SU. I am getting
following error.

Please advise.

Here is the details of error: 10:13:49,928 | WARN | pool-component.servicemix-jms-thread-2 |
DefaultBroker | rvicemix.jbi.nmr.DefaultBroker 341 | ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing,
but can't find it registered
10:13:49,928 | WARN | pool-component.servicemix-jms-thread-2 |
DefaultBroker | rvicemix.jbi.nmr.DefaultBroker 341 | ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing,
but can't find it registered
10:13:49,928 | ERROR | pool-component.servicemix-jms-thread-2 |
plexingConsumerProcessor | ultiplexingConsumerProcessor$1 100 |
Error
while handling jms message
javax.jbi.messaging.MessagingException: Could not find route for
exchange: InOut[
id: ID:169.254.185.179-1133f6208c3-5:0
status: Active
role: provider
service: {urn:logicblaze:soa:loanbroker}myDroolsService
operation: Hello
in: <?xml version="1.0" encoding="UTF-8"?><HelloRequest
xmlns="urn:/HelloWorld2.wsdl"
xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>
<hello>Hello from Vishal - </hello>
</HelloRequest>
] for service: {urn:logicblaze:soa:loanbroker}myDroolsService and
interface: null
at

org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBr
oker.java:295)
at

org.apache.servicemix.jbi.security.SecuredBroker.sendExchangePacket(Secu
redBroker.java:81)
at

org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContain
er.java:793)
at

org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryC
hannelImpl.java:381)
at

org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryCha
nnelImpl.java:417)
at

org.apache.servicemix.common.AsyncBaseLifeCycle.sendConsumerExchange(Asy
ncBaseLifeCycle.java:572)
at

org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor$1.r
un(MultiplexingConsumerProcessor.java:98)
at

java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:885)
at

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:907)
at java.lang.Thread.run(Thread.java:619)

[ Show > ] Jawed Khan [18/Jun/07 08:27 AM] Here is the details of
error:
10:13:49,928 | WARN | pool-component.servicemix-jms-thread-2 |
DefaultBroker | rvicemix.jbi.nmr.DefaultBroker 341 | ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing,
but can't find it registered 10:13:49,928 | WARN |
pool-component.servicemix-jms-thread-2 | DefaultBroker |
rvicemix.jbi.nmr.DefaultBroker 341 | ServiceName
({urn:logicblaze:soa:loanbroker}myDroolsService) specified for
routing,
but can't find it registered 10:13:49,928 | ERROR |
pool-component.servicemix-jms-thread-2 | plexingConsumerProcessor |
ultiplexingConsumerProcessor$1 100 | Error while handling jms
message
javax.jbi.messaging.MessagingException: Could not find route for
exchange: InOut[ id: ID:169.254.185.179-1133f6208c3-5:0 status:
Active
role: provider service:
{urn:logicblaze:soa:loanbroker}myDroolsService
operation: Hello in: <?xml version="1.0"
encoding="UTF-8"?><HelloRequest
xmlns="urn:/HelloWorld2.wsdl"
xmlns:soap="http://www.w3.org/2003/05/soap-envelope";> <hello>Hello
from
Vishal - </hello> </HelloRequest> ] for service:
{urn:logicblaze:soa:loanbroker}myDroolsService and interface: null
at
org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBr
oker.java:295)
at

org.apache.servicemix.jbi.security.SecuredBroker.sendExchangePacket(Secu
redBroker.java:81)
at

org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContain
er.java:793)
at

org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryC
hannelImpl.java:381)
at

org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryCha
nnelImpl.java:417)
at

org.apache.servicemix.common.AsyncBaseLifeCycle.sendConsumerExchange(Asy
ncBaseLifeCycle.java:572)
at

org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor$1.r
un(MultiplexingConsumerProcessor.java:98)
at

java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:885)
at

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:907)
at java.lang.Thread.run(Thread.java:619)

Thanks,
Prasanta

------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>
<!--
    Copyright (c) 2007 Sabre Inc. All rights reserved.
    This code is the proprietary information of Sabre Inc.
    and is for internal use only.
-->
<beans xmlns:sm="http://servicemix.apache.org/config/1.0";
  xmlns:drools="http://servicemix.apache.org/drools/1.0";
  xmlns:foo="urn:logicblaze:soa:loanbrokers">

<drools:endpoint service="foo:myDroolsService"
    endpoint="endpoint"
    ruleBaseResource="classpath:HelloWorld.drl"
    namespaceContext="#nsContext"/>

  <drools:namespace-context id="nsContext">
    <drools:namespaces>
      <drools:namespace 
prefix="bar">http://servicemix.apache.org/bar</drools:namespace>
    </drools:namespaces>
  </drools:namespace-context>

</beans>
------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0";
       xmlns:foo="urn:logicblaze:soa:loanbroker"
           xmlns:sns="urn:/HelloWorld2.wsdl">

           <!-- endpoint/@service matches with 
/deploy/process/provide/service/@name  in ODE deploy.xml -->
  <jms:endpoint service="foo:myDroolsService"
                endpoint="broker"
                targetService="foo:myDroolsService"
defaultOperation="sns:Hello" role="consumer"
                                soap="true"
                connectionFactory="#jmsFactory"
                destinationStyle="queue"
                jmsProviderDestinationName="demo.org.servicemix.source"
                defaultMep="http://www.w3.org/2004/08/wsdl/in-out"; />
                                
        <!--jms:endpoint service="lb:LoanBrokerService"
                endpoint="broker"
                targetService="lb:LoanBrokerService"
defaultOperation="lb:getLoanQuote" role="consumer"
                connectionFactory="#jmsFactory"
                destinationStyle="queue"
                jmsProviderDestinationName="demo.org.servicemix.source"
                defaultMep="http://www.w3.org/2004/08/wsdl/in-out"; /-->

  <bean id="jmsFactory" 
class="org.apache.activemq.pool.PooledConnectionFactory">
    <property name="connectionFactory">
      <bean class="org.apache.activemq.ActiveMQConnectionFactory">
        <property name="brokerURL" value="tcp://localhost:61616" />
      </bean>
    </property>
  </bean>

</beans>

Reply via email to