You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by eharoldw <hw...@ezrez.com> on 2008/03/12 23:33:08 UTC

ObjectMessage objects are serialized in spite of configurations

We want to prevent ObjectMessage serialization for performance reasons. We
are using an embedded broker with the VM protocol. We have followed the
instructions found on
http://activemq.apache.org/how-should-i-use-the-vm-transport.html.

Our configuration options include the following:
- set "copyMessageOnSend" to false on the ConnectionFactory
- set "objectMessageSerializationDefered" to true on the ConnectionFactory
- set "persistent" to false on the Broker via url configuration
- our MessageProducer specifies a delivery mode of NON_PERSISTENT.

We understand at certain times the ObjectMessage might be serialized (e.g.
if the broker runs out of RAM). Our messages are fully serializable. Again,
this is just for performance.

In spite of these settings we are still seeing the ObjectMessage being
serialized due to a call to message.copy(), as seen in the following stack
trace:

Caused by: java.lang.RuntimeException:
com.ezrez.concurrent.jms.JmsConnectionFactory$NotSerializabletextBusinessImpl.jav
a:450)  at
org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:104)
        at
org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:80)Service.java:1074)
        at
org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:75)invoke(<generated>)
        at
org.apache.activemq.ActiveMQConnection$2.processMessageDispatch(ActiveMQConnection.java:1551)
        at
org.apache.activemq.command.MessageDispatch.visit(MessageDispatch.java:108)keJoinpoint(Cglib2AopProxy.java:70
0)      at
org.apache.activemq.ActiveMQConnection.onCommand(ActiveMQConnection.java:1540)
        ... 8
moreingframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)

Do you have any suggestions on how to prevent serialization?

Thanks.
Harold

-- 
View this message in context: http://www.nabble.com/ObjectMessage-objects-are-serialized-in-spite-of-configurations-tp16015001s2354p16015001.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ObjectMessage objects are serialized in spite of configurations

Posted by eharoldw <hw...@ezrez.com>.
We are still seeing this error. Does anyone know if it is possible to fix
this. 

Thanks,

E. Harold Williams
EzRez Software



eharoldw wrote:
> 
> We want to prevent ObjectMessage serialization for performance reasons. We
> are using an embedded broker with the VM protocol. We have followed the
> instructions found on
> http://activemq.apache.org/how-should-i-use-the-vm-transport.html.
> 
> Our configuration options include the following:
> - set "copyMessageOnSend" to false on the ConnectionFactory
> - set "objectMessageSerializationDefered" to true on the ConnectionFactory
> - set "persistent" to false on the Broker via url configuration
> - our MessageProducer specifies a delivery mode of NON_PERSISTENT.
> 
> We understand at certain times the ObjectMessage might be serialized (e.g.
> if the broker runs out of RAM). Our messages are fully serializable.
> Again, this is just for performance.
> 
> In spite of these settings we are still seeing the ObjectMessage being
> serialized due to a call to message.copy(), as seen in the following stack
> trace:
> 
> Caused by: java.lang.RuntimeException:
> com.ezrez.concurrent.jms.JmsConnectionFactory$NotSerializabletextBusinessImpl.jav
> a:450)  at
> org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:104)
>         at
> org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:80)Service.java:1074)
>         at
> org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:75)invoke(<generated>)
>         at
> org.apache.activemq.ActiveMQConnection$2.processMessageDispatch(ActiveMQConnection.java:1551)
>         at
> org.apache.activemq.command.MessageDispatch.visit(MessageDispatch.java:108)keJoinpoint(Cglib2AopProxy.java:70
> 0)      at
> org.apache.activemq.ActiveMQConnection.onCommand(ActiveMQConnection.java:1540)
>         ... 8
> moreingframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
> 
> Do you have any suggestions on how to prevent serialization?
> 
> Thanks.
> Harold
> 
> 

-- 
View this message in context: http://www.nabble.com/ObjectMessage-objects-are-serialized-in-spite-of-configurations-tp16015001p22254581.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.