You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by James Strachan <ja...@gmail.com> on 2006/09/04 08:54:24 UTC

Re: Is it possible to modify messages in Interceptor?

Generally you can't easily change a message. Normally you consume the
message then send a new message. Its generally quite inefficient to
modify messages in place in the broker since it adds a massive
deserialization/serialization burden - but with some hacking it should
be possible.

On 8/30/06, dap <de...@yahoo.com> wrote:
>
> Hello,
>
> I modify messages(add new properties, change body etc.) in Interceptor.
> (current 4.1 snapshot)
>
> but the consumer gets the messages still unchanged.
>
> ***
>
> aqtivemq.xml:
>
>  <broker xmlns="http://activemq.org/config/1.0" useJmx="false">
>     ...
>     <plugins>
>           <org.apache.activemq.broker.util.ModifyBrokerPlugin/>
>    </plugins>
>     ...
>   </broker>
>
>
> ModifyBrokerPlugin.java:
>
> public class ModifyBrokerPlugin extends BrokerPluginSupport {
> …
>
>   public void send(ConnectionContext context, Message messageSend) throws
> Exception {
>
>          log.info("\n MapMessage before...: " + messageSend);
>
>                         MapMessage  msg  = (MapMessage)messageSend;
>
>                         msg.setStringProperty("foo","SUPER_FOO");
>
>                         //messageSend.getMessage().setProperty("foo2","SUPER_FOO2");
>
>          log.info("\n MapMessage after...: " + messageSend);            //message
> has been changed
>
>         super.send(context, messageSend);
>
>     }
> ...
> }
>
>
> ***
>
> Do I miss something here?
>
> Or could someone please provide an other idea / examle of modifying message
> in a Queue?
>
>
> thanks!
> --
> View this message in context: http://www.nabble.com/Is-it-possible-to-modify-messages-in-Interceptor--tf2189703.html#a6058250
> Sent from the ActiveMQ - User forum at Nabble.com.
>
>


-- 

James
-------
http://radio.weblogs.com/0112098/