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

637
Vistas
Clase serializable no disponible para el intermediario: java.lang.ClassNotFoundException al ver mensajes en ActiveMQ

Quiero ver el contenido del mensaje que se ha puesto en cola en las colas de ActiveMQ. Abrí la consola web ( http://localhost:8161/admin/queues.jsp ) e hice clic en el ID de mensaje del mensaje de la cola. Me da el siguiente error en la ventana "Detalles del mensaje" en lugar de dar el contenido del mensaje.

"javax.jms.JMSException: no se pudo crear el cuerpo a partir del contenido. La clase serializable no está disponible para el intermediario. Motivo: java.lang.ClassNotFoundException:"

¿Cuál es la causa de esta excepción y qué debo hacer para deshacerme de esto?

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

0

He visto este mismo error usando ActiveMQ versión 5.8.0

En mi caso, fue una pista falsa , la consola ActiveMQ no pudo deserializar el mensaje, no debe tener acceso al contenedor en el que se encuentra la clase, pero la aplicación del consumidor sí lo tiene, y el mensaje se pasa sin problemas de la cola a el consumidor.

Me interesaría ver si hay una solución para el problema aquí (ver el mensaje en la consola), y también cómo se maneja esto en las versiones más recientes de ActiveMQ.

about 4 years ago · Santiago Trujillo Denunciar

0

Como mencionó OwIR, debe establecer la ruta del archivo jar que contiene las clases en la propiedad wrapper.java.classpath.3 en %ACTIVEMQ_HOME%\bin\win64\wrapper.conf .

Es posible que encuentre la siguiente excepción después de actualizar la propiedad anterior

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

Para solucionarlo, establezca la propiedad wrapper.java.additional.13 en -Dorg.apache.activemq.SERIALIZABLE_PACKAGES="<choose_the_packages_set_it_here>"

También puede usar -Dorg.apache.activemq.SERIALIZABLE_PACKAGES="*" como valor, sin embargo, puede que no sea seguro usar un comodín.

¡¡Esto funcionó para mí!! Espero que te ayude

about 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());
about 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