Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

645
Vistas
Serializable class not available to broker: java.lang.ClassNotFoundException while viewing messages in ActiveMQ

I want to see content of message which have been queued in ActiveMQ queues. I opened web-console.(http://localhost:8161/admin/queues.jsp) and clicked on message-id of the message of queue. It gives me following error in "Message Details" window rather than giving content of message.

"javax.jms.JMSException: Failed to build body from content. Serializable class not available to broker. Reason: java.lang.ClassNotFoundException:"

What is the cause of this exception & what I need to do to get rid of this?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

I have seen this same error using ActiveMQ version 5.8.0

In my case it was a red herring, the ActiveMQ console could not unserialize the message it mustn't have access to the jar that the class is in, but the consumer application does, and the message is passed on without issue from the queue to the consumer.

I'd be interested to see if there's a solution to the issue here (viewing the message in the console), and also how this is handled in more recent versions of ActiveMQ.

over 4 years ago · Santiago Trujillo Denunciar

0

As OwIR mentioned, you need to set the path of the jar file containing the classes onto the wrapper.java.classpath.3 property in %ACTIVEMQ_HOME%\bin\win64\wrapper.conf.

You might encounter the below exception after updating the above property

Serializable class not available to broker. Reason: java.lang.ClassNotFoundException: Forbidden class

In order to fix it, set the wrapper.java.additional.13 property to -Dorg.apache.activemq.SERIALIZABLE_PACKAGES="<choose_the_packages_set_it_here>"

You could also use -Dorg.apache.activemq.SERIALIZABLE_PACKAGES="*" as the value, however it might be unsafe to use wildcard.

This worked for me!! Hope it helps you

over 4 years ago · Santiago Trujillo Denunciar

0

If you are sending class, in this case you will face this issue.

For example: customer is my class object and when you try to see the infomation it gives you error:
Serializable class not available to broker: java.lang.ClassNotFoundException while viewing messages in ActiveMQ

jmsTemplate.convertAndSend(jmsDestination,customer);

The Solution of this problem is ("toString()") method along with class.

Solution: jmsTemplate.convertAndSend(jmsDestination,customer.toString());
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda