The screenshot has been removed it seems.
Make sure that the correct namespace is used when referencing
a service. These are QName and not simple string.
From the error message, it seems no namespace has been specified
for the target service, maybe this is the cause of the error.
The (unofficial) 3.0 distribution is available at [1] and samples
sources are available at [2] and [3]
[1] http://servicemix.goopen.org/site/servicemix-30.html
[2] http://svn.apache.org/viewvc/incubator/servicemix/trunk/samples/basic/
[3] http://svn.apache.org/viewvc/incubator/servicemix/trunk/samples/bridge/
On 9/25/06, Hélène JOANIN <[EMAIL PROTECTED]> wrote:
Hi Guillaume,
First of all, thank you very much for your answer.
See below my questions/comments.
Regards.
Hélène.
Guillaume Nodet wrote:
The problem is that the JBI exchange is sent to the LoanBrokerService,
but the NMR can not find this service registered.
Indeed, this is the problem I got...
Make sure an endpoint for the given service has been activated.
Here in attachment a screen of jconsole which shows that an endpoint for
this service exists.
Also, you should take a look at the examples in the 3.0 release.
Most of them have been refactored to use the new jbi components.
I already use the version 3.0-M2-incubating, and I don't find an example of
the service-jms.
I also try to browse the sources of the trunck to have a look of the basic
and bridge samples, but I can't find the xbean.xml descriptors.
On 9/25/06, Hélène JOANIN <[EMAIL PROTECTED]> wrote:
Hi all,
I'm newbie on ServiceMix and I would like to be able to use this ESB and
particuraly the service-jms JBI component.
To have got the hang of ServiceMix and the service-jms, I try to rewrite
the bpel-bpe example delivered in the ServiceMix package, by using the
service-jms component intead of the JMS lightweight component.
Unfortunately, I'm not able to run successfully this modified example and
I
got this following error
INFO - AutoDeploymentService - Directory: deploy: Finished
installation of archive: bpe-demo-sa.zip
WARN - DefaultBroker - ServiceName (LoanBrokerService)
specified for routing, but can't find it registered
ERROR - MultiplexingConsumerProcessor - Error while handling jms message
javax.jbi.messaging.MessagingException: Could not find
route for exchange: MessageExchange[
id: ID:joaninh-46760-1159175936954-3:0
status: Active
role: provider
service: LoanBrokerService
operation: getLoanQuote
in: <?xml version="1.0"
encoding="UTF-8"?><getLoanQuoteRequest
xmlns="urn:logicblaze:soa:loanbroker">
<ssn>102-24532-53254</ssn>
<amount>40736.07354934523</amount>
<duration>0</duration>
</getLoanQuoteRequest>
] for service: LoanBrokerService and interface: null
when I run the JMS client.
I certainly do an gross error in the descriptor of the jms service unit I
added, by I can't find it !
Any help from an expert in ServiceMix will be appreciate.
Thanks in advance.
Hélène JOANIN.
Here are the changes I did in the bpel-bpe example of
apache-servicemix-3.0-M2-incubating version.
1) I retrieve the JMS component in the servicemix.xml descriptor of the
lw-su.
2) I create a new service unit jms-su with the following xbean deployment:
<?xml version="1.0"?>
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
xmlns:amq="http://activemq.org/config/1.0">
xmlns:lb="urn:logicblaze:soa:loanbroker"
xmlns:demo="urn:servicemix:demo">
<jms:endpoint service="demo:JmsProvider"
endpoint="JmsProvider"
role="provider"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out"
destinationStyle="queue"
jmsProviderDestinationName="demo.org.servicemix.output"
connectionFactory="#connectionFactory"
/>
<jms:endpoint service="demo:JmsConsumer"
endpoint="jms"
targetService="lb:LoanBrokerService"
targetEndpoint="loanbroker"
defaultOperation="lb:getLoanQuote"
role="consumer"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out"
destinationStyle="queue"
jmsProviderDestinationName="demo.org.servicemix.source"
connectionFactory="#connectionFactory"
/>
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://localhost:61616" />
</bean>
</beans>
3) I update the jbi.xml of service-assembly by adding this new jms-su
service unit.
4) I update the servicemix.xml global descriptor with:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
xmlns:amq="http://activemq.org/config/1.0">
<sm:container id="jbi"
rootDir="./data/smx"
installationDirPath="./install"
deploymentDirPath="./deploy"
flowName="seda"
depends-on="broker"
>
<sm:activationSpecs>
</sm:activationSpecs>
</sm:container>
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://localhost:61616" />
</bean>
<bean id="broker"
class="org.apache.activemq.xbean.BrokerFactoryBean">
<property name="config" value="classpath:activemq.xml"/>
</bean>
<bean id="jencks" class="org.jencks.JCAContainer"
singleton="true">
<property name="bootstrapContext">
<bean
class="org.jencks.factory.BootstrapContextFactoryBean">
<property name="threadPoolSize" value="25" />
</bean>
</property>
<!-- the JCA Resource Adapter -->
<property name="resourceAdapter">
<bean id="activeMQResourceAdapter"
class="org.apache.activemq.ra.ActiveMQResourceAdapter"
singleton="true">
<property name="serverUrl"
value="tcp://localhost:61616" />
</bean>
</property>
</bean>
</beans>
--
Cheers,
Guillaume Nodet