Camel-JMS-Fehler beim erstellen des producer

Ich bin vernünftig neu zu Kamel und versucht haben, zu verwenden requestBody aber immer eine Fehlermeldung. Ich habe vereinfacht meinen code und bekomme immer noch die gleiche exception. Wenn meine Vermutung korrekt ist, wird der Schlüssel wahrscheinlich die Meldung "Fehler beim erstellen des Producer-endpoint", aber ich bin mir nicht sicher, wie zu tun, dass die Verwendung der Java-DSL.

Könnte jemand bitte zeigen Sie mir den Camel-Dokumentation, die mir zeigt, was ich falsch mache. Danke für Eure Hilfe.

Ist hier der vereinfachte code.

package nz.co.home.cameljmsrequest;

import org.apache.camel.CamelContext;
import org.apache.camel.ProducerTemplate;
import org.apache.camel.component.activemq.ActiveMQComponent;
import org.apache.camel.impl.DefaultCamelContext;

public class App {

    public static void main(String[] args) throws Exception {

        //set up the underlying camel context and add the ActiveMQ component
        CamelContext camelContext = new DefaultCamelContext();
        camelContext.addComponent(
                "jms",
                ActiveMQComponent.activeMQComponent("tcp://192.168.1.150:61616")
                );

        //start the context
        camelContext.start();

        //send the message
        ProducerTemplate producer = camelContext.createProducerTemplate();
        String requestBody = producer.requestBody("jms:queue:test", 
                "Request Message", String.class);
        System.out.println(requestBody);

        //stop the context
        camelContext.stop();

        //just because we can
        System.out.println("sent message");
    }
}

Die resultierende Nachricht wie folgt Aussehen:

Exception in thread "main" org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[Message: Request Message]
    at org.apache.camel.util.ObjectHelper.wrapCamelExecutionException(ObjectHelper.java:1287)
    at org.apache.camel.util.ExchangeHelper.extractResultBody(ExchangeHelper.java:618)
    at org.apache.camel.impl.DefaultProducerTemplate.extractResultBody(DefaultProducerTemplate.java:454)
    at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:120)
    at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:136)
    at org.apache.camel.impl.DefaultProducerTemplate.requestBody(DefaultProducerTemplate.java:284)
    at org.apache.camel.impl.DefaultProducerTemplate.requestBody(DefaultProducerTemplate.java:314)
    at nz.co.home.cameljmsrequest.App.main(App.java:23)
Caused by: org.apache.camel.FailedToCreateProducerException: Failed to create Producer for endpoint: Endpoint[jms://queue:testCamelActiveMq]. Reason: java.lang.IllegalArgumentException: connectionFactory must be specified
    at org.apache.camel.component.jms.JmsProducer.initReplyManager(JmsProducer.java:98)
    at org.apache.camel.component.jms.JmsProducer.processInOut(JmsProducer.java:164)
    at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:129)
    at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
    at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
    at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
    at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
    at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63)
    at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:366)
    at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:337)
    at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:233)
    at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:337)
    at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:192)
    at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:115)
    at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:119)
    ... 4 more
Caused by: java.lang.IllegalArgumentException: connectionFactory must be specified
    at org.apache.camel.util.ObjectHelper.notNull(ObjectHelper.java:290)
    at org.apache.camel.component.jms.JmsConfiguration.createConnectionFactory(JmsConfiguration.java:1052)
    at org.apache.camel.component.jms.JmsConfiguration.getConnectionFactory(JmsConfiguration.java:415)
    at org.apache.camel.component.jms.JmsEndpoint.getConnectionFactory(JmsEndpoint.java:468)
    at org.apache.camel.component.jms.reply.TemporaryQueueReplyManager.createListenerContainer(TemporaryQueueReplyManager.java:115)
    at org.apache.camel.component.jms.reply.ReplyManagerSupport.doStart(ReplyManagerSupport.java:222)
    at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:60)
    at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:62)
    at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:52)
    at org.apache.camel.component.jms.JmsProducer.createReplyManager(JmsProducer.java:503)
    at org.apache.camel.component.jms.JmsProducer.initReplyManager(JmsProducer.java:94)
    ... 18 more
InformationsquelleAutor s.k | 2013-03-13
Schreibe einen Kommentar