You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by kiwisurfer <uk...@yahoo.co.uk> on 2007/07/24 20:58:09 UTC
Lightweight JMS
I have managed to get a simple ServiceMix config sort of working:
JMS -> NMR-> Bean
My bean is hosted by the servicemix-bean component, and implements the
MessageExchangeListener interface, and also uses the @Resource annotations
to store the DeliveryChannel instance. It is deployed as part of a SA/SU,
and I can see the endpoints, queues and SA/SUs registered via MC4J.
public class CatalogServiceEngineImpl implements MessageExchangeListener {
private static final Log log =
LogFactory.getLog(CatalogServiceEngineImpl.class);
private ExternalCatalog catalogProvider;
@Resource
private DeliveryChannel channel;
public void onMessageExchange(MessageExchange exchange) throws
MessagingException
{
if (exchange.getStatus() == ExchangeStatus.ACTIVE)
{
log.info("Received message " + exchange);
NormalizedMessage message = exchange.getMessage("in");
ExchangeStatus outgoingStatus = ExchangeStatus.DONE;
log.info("About to get operation id ");
Integer operationId = (Integer) message.getProperty("operationId");
log.info("Checking operation Id ");
if (operationId != null)
{
log.info("OperationId= " + operationId);
}
exchange.setStatus(outgoingStatus);
channel.send(exchange);
}
}
}
I am trying to invoke the Bean service through a JMSClient (taken from
loans-broker-bpel), with a simple message that has only one property called
operationId.
However, i get the following stack trace:
ERROR - MultiplexingConsumerProcessor - Error while handling jms message
java.lang.NullPointerException
at
org.apache.servicemix.jms.AbstractJmsProcessor.toNMS(AbstractJmsProce
ssor.java:172)
at
org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor.
access$300(MultiplexingConsumerProcessor.java:40)
at
org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor$
1.run(MultiplexingConsumerProcessor.java:93)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
ker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
ker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
Any ideas?
--
View this message in context: http://www.nabble.com/Usage-of-lightweight-components--tf3325766s12049.html#a11769691
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: Lightweight JMS
Posted by kiwisurfer <uk...@yahoo.co.uk>.
Found the error. It appears that the example code from the loans-broker-bpel
JMSClient is missing the following on the request string:
String request ="<?xml version='1.0' encoding='UTF-8'?>String request =
....... "
--
View this message in context: http://www.nabble.com/Usage-of-lightweight-components--tf3325766s12049.html#a11770208
Sent from the ServiceMix - User mailing list archive at Nabble.com.