Announcement Announcement Module
Collapse
No announcement yet.
message-driven-channel-adapter with custom object Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • message-driven-channel-adapter with custom object

    Hi,

    Working on a issue where the client sends a custom object on to the JMS queue using the JMSTemplate.

    Then i have a message-driven-channel-adapter to consume that queue and Transform and do some other stuff.

    However i'm getting an exception during the consumption step itself. Can you please point out any resolution.

    weblogic.jms.common.JMSException: [JMSClientExceptions:055114]Error deserializing an object
    at weblogic.jms.common.ObjectMessageImpl.getObject(Ob jectMessageImpl.java:147)
    at org.springframework.jms.support.converter.SimpleMe ssageConverter.extractSerializableFromMessage(Simp leMessageConverter.java:215)


    java.io.InvalidClassException:
    local class incompatible: stream classdesc serialVersionUID = -5832285448731658496, local class serialVersionUID = 2456809417326198575

  • #2
    It looks like you're sending JMS ObjectMessages where the payload object type is not the same Class on both sides?

    Comment


    • #3
      After further analysis, i had two test programs putting the messages sequentially and it failed with that error somehow?
      when i fixed to send it once before integration runs, it appears to be working fine. maybe the jmsTemplate could give a better description

      Comment


      • #4
        Well, the JmsTemplate is just propagating the underlying JMSException (and in this case a WebLogic specific Exception).

        The fact that serialization failed on a version mismatch shows that there are two different class versions on the sender and receiver respectively. Was that the case when you ran it the first time?

        Comment


        • #5
          No Both are referencing the same jar, so should be same class version.

          The only issue i see is the jar is compiled/built on 1.5 version of weblogic jdk. And the first test program sends it to the queue.
          The second test program from other project which has 1.6 uses this jar and tries to send the same class on to the queue. And it fails.

          Comment


          • #6
            Can you double-check the classpath and make sure that they are using exactly the same JAR?

            Comment

            Working...
            X