You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by vsmahesh <an...@yahoo.co.in> on 2013/09/14 08:35:56 UTC

sending email:getting error Error processing exchange. Exchange Message: Body is null.

Hi all,
I am geeting the error body is null when i m trying to send mail from camel.
My route is like,
<from uri="timer://foo?fixedRate=true&amp;period=60"/>
 <to uri="Email"/>
<bean id="Email" class="com.abc.mes.bw.cdc.EmailBodyClass"/>

I tried with following process methods,but i am getting the same error

@Override
	public void process(Exchange exchng) throws Exception {
		CamelContext context = null;
		// TODO Auto-generated method stub
	
		ProducerTemplate template = context.createProducerTemplate();
		Map map = new HashMap();
		map.put("To", "to=om_Integration_lowerenv@abc.com");
		map.put("From", "jstrachan@apache.org");
		map.put("Subject", "Camel rocks");

		String body = "Hello Claus.\nYes it does.\n\nRegards James.";
	
template.sendBodyAndHeaders("smtp://smtp.td.local?username=c_mahsom&amp;password=abcd&amp;to=om_Integration_lowerenv@abc.com",
body, map);
	
	}

@Override
	public void process(Exchange exchng) throws Exception {
		CamelContext context = null;
		// TODO Auto-generated method stub
		CamelContext context = null;
	    Endpoint endpoint =
context.getEndpoint("smtp://smtp.td.local?username=c_mahsom&amp;password=abcd&amp;to=om_Integration_lowerenv@abcd.com");
		Exchange exchange = endpoint.createExchange();
		Message in = exchange.getIn();
		in.setBody("Hello World");
		Producer producer = endpoint.createProducer();
		// start the producer
		producer.start();
		// and let it go (processes the exchange by sending the email)
		producer.process(exchange);
		
	}
	

Error processing exchange. Exchange[Message: [Body is null]]. Caused by:
[java.
lang.NullPointerException - null]
java.lang.NullPointerException
        at
com.outotec.mes.bw.energyconsumption.EmailBodyClass.process(EmailBody
Class.java:31)
        at
org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.
java:101)
        at
org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.j
ava:71)
        at
org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncP
rocessorBridge.process(AsyncProcessorConverterHelper.java:61)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelp
er.java:73)
        at
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProc
essor.java:122)
        at
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.j
ava:298)
        at
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:1
17)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelp
er.java:73)
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(Delegat
eAsyncProcessor.java:99)

kindly help me in setting the body of the mail.
thanks



--
View this message in context: http://camel.465427.n5.nabble.com/sending-email-getting-error-Error-processing-exchange-Exchange-Message-Body-is-null-tp5739344.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: sending email:getting error Error processing exchange. Exchange Message: Body is null.

Posted by vsmahesh <an...@yahoo.co.in>.
Thank you.Its working.I implemented it using 
 <setBody> 
         <simple>Email sending checking.....!!</simple> 
      </setBody>
      



--
View this message in context: http://camel.465427.n5.nabble.com/sending-email-getting-error-Error-processing-exchange-Exchange-Message-Body-is-null-tp5739344p5739350.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: sending email:getting error Error processing exchange. Exchange Message: Body is null.

Posted by Claus Ibsen <cl...@gmail.com>.
The message body is null as the timer does not set any body.

You can set a body first with

<from ...
<setBody>
   <constant>Hello Mail</constant>
</setBody>


On Sat, Sep 14, 2013 at 8:35 AM, vsmahesh <an...@yahoo.co.in> wrote:
> Hi all,
> I am geeting the error body is null when i m trying to send mail from camel.
> My route is like,
> <from uri="timer://foo?fixedRate=true&period=60"/>
>  <to uri="Email"/>
> <bean id="Email" class="com.abc.mes.bw.cdc.EmailBodyClass"/>
>
> I tried with following process methods,but i am getting the same error
>
> @Override
>         public void process(Exchange exchng) throws Exception {
>                 CamelContext context = null;
>                 // TODO Auto-generated method stub
>
>                 ProducerTemplate template = context.createProducerTemplate();
>                 Map map = new HashMap();
>                 map.put("To", "to=om_Integration_lowerenv@abc.com");
>                 map.put("From", "jstrachan@apache.org");
>                 map.put("Subject", "Camel rocks");
>
>                 String body = "Hello Claus.\nYes it does.\n\nRegards James.";
>
> template.sendBodyAndHeaders("smtp://smtp.td.local?username=c_mahsom&password=abcd&to=om_Integration_lowerenv@abc.com",
> body, map);
>
>         }
>
> @Override
>         public void process(Exchange exchng) throws Exception {
>                 CamelContext context = null;
>                 // TODO Auto-generated method stub
>                 CamelContext context = null;
>             Endpoint endpoint =
> context.getEndpoint("smtp://smtp.td.local?username=c_mahsom&password=abcd&to=om_Integration_lowerenv@abcd.com");
>                 Exchange exchange = endpoint.createExchange();
>                 Message in = exchange.getIn();
>                 in.setBody("Hello World");
>                 Producer producer = endpoint.createProducer();
>                 // start the producer
>                 producer.start();
>                 // and let it go (processes the exchange by sending the email)
>                 producer.process(exchange);
>
>         }
>
>
> Error processing exchange. Exchange[Message: [Body is null]]. Caused by:
> [java.
> lang.NullPointerException - null]
> java.lang.NullPointerException
>         at
> com.outotec.mes.bw.energyconsumption.EmailBodyClass.process(EmailBody
> Class.java:31)
>         at
> org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.
> java:101)
>         at
> org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.j
> ava:71)
>         at
> org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncP
> rocessorBridge.process(AsyncProcessorConverterHelper.java:61)
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelp
> er.java:73)
>         at
> org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProc
> essor.java:122)
>         at
> org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.j
> ava:298)
>         at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:1
> 17)
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelp
> er.java:73)
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(Delegat
> eAsyncProcessor.java:99)
>
> kindly help me in setting the body of the mail.
> thanks
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/sending-email-getting-error-Error-processing-exchange-Exchange-Message-Body-is-null-tp5739344.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cibsen@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen