Results 1 to 9 of 9

Thread: MessageFormatException: MQJMS1058: Invalid message property name:JMSXUserID

  1. #1

    Question MessageFormatException: MQJMS1058: Invalid message property name:JMSXUserID

    We are getting a lot of these warnings even though we are not setting any JMSX properties. Please suggest on how to avoid these warnings. We are seeing this error consistently for every message.
    Code:
    2010-05-05 07:49:42,153 WARN  [pool-1-thread-1] jms.DefaultJmsHeaderMapper - failed to map Message header 'JMSXUserID' to JMS property
    javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXUserID
    	at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
    	at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
    	at org.springframework.integration.jms.DefaultJmsHeaderMapper.fromHeaders(DefaultJmsHeaderMapper.java:84)
    	at org.springframework.integration.jms.HeaderMappingMessageConverter.toMessage(HeaderMappingMessageConverter.java:177)
    	at org.springframework.jms.core.JmsTemplate$5.createMessage(JmsTemplate.java:619)
    	at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:570)
    	at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:541)
    	at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471)
    	at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:539)
    	at org.springframework.jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:617)
    	at org.springframework.jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:609)
    	at org.springframework.integration.jms.JmsSendingMessageHandler.handleMessage(JmsSendingMessageHandler.java:62)
    	at org.springframework.integration.dispatcher.UnicastingDispatcher.doDispatch(UnicastingDispatcher.java:103)
    	at org.springframework.integration.dispatcher.UnicastingDispatcher.dispatch(UnicastingDispatcher.java:90)
    	at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:43)
    	at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:116)
    	at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:94)
    	at org.springframework.integration.channel.MessageChannelTemplate.doSend(MessageChannelTemplate.java:223)
    	at org.springframework.integration.channel.MessageChannelTemplate.send(MessageChannelTemplate.java:180)
    	at org.springframework.integration.handler.DelayHandler.releaseMessage(DelayHandler.java:229)
    	at org.springframework.integration.handler.DelayHandler.access$0(DelayHandler.java:227)
    	at org.springframework.integration.handler.DelayHandler$1.run(DelayHandler.java:207)
    	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    	at java.util.concurrent.FutureTask.run(Unknown Source)
    	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
    	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    Last edited by srikanthradix; May 5th, 2010 at 05:32 PM.

  2. #2
    Join Date
    Oct 2005
    Location
    Boston, MA
    Posts
    2,840

    Default

    Those JMSX headers are being set by the JMS provider. The warnings are harmless (WARN-level logging). However, since this has come up several times, I think we could consider moving those to debug level.

    Better yet, we could try to ignore the unmodifiable headers when iterating. The problem is that these are "extensions", and some are only settable by the provider (hence the errors which we purposefully catch and log). While there is a listing of the common provider-only-settable headers in the JMS specification, the general idea is that the set of headers could be extended. Also, some of the headers *can* be set by clients, which means that we should not simply ignore everything with a "JMSX" prefix.

    Feel free to open a new issue in JIRA with any suggestions you have.

    Thanks,
    Mark

  3. #3

    Default Created Jira. The link is provided below.

    This is the link to the JIRA:
    http://jira.springframework.org/browse/INT-1125
    Thanks.

  4. #4
    Join Date
    Oct 2005
    Location
    Boston, MA
    Posts
    2,840

    Default

    Thank you.

    Just to be sure... you are not experiencing any actual *problems*, right?... just annoying amounts of logging?

  5. #5

    Default yes no problems except annoying amounts of logging

    yes no problems except annoying amounts of logging

  6. #6
    Join Date
    Oct 2005
    Location
    Boston, MA
    Posts
    2,840

    Default

    Okay and what version are you using currently?

  7. #7

    Default Spring Versions

    Spring versions being used.
    <springframework.version>2.5.6</springframework.version>
    <springintegration.version>1.0.3.RELEASE</springintegration.version>

  8. #8
    Join Date
    Oct 2005
    Location
    Boston, MA
    Posts
    2,840

    Default

    This has been resolved (now logging at TRACE level only for any header mapping failures with the 'JMSX' prefix). The change will be in the upcoming 2.0 M4 release, and it has also been resolved on the 1.0.x branch (1.0.5 will be the next release).

  9. #9

    Question When will 1.0.5.RELEASE version of spring integration be released?

    Currently, we are using 1.0.4.RELEASE. Just wondering when will it be released.
    Code:
                <dependency>
                    <groupId>org.springframework.integration</groupId>
                    <artifactId>spring-integration-core</artifactId>
                    <version>${springintegration.version}</version>
                    <optional>false</optional>
                </dependency>
                <dependency>
                    <groupId>org.springframework.integration</groupId>
                    <artifactId>spring-integration-adapter</artifactId>
                    <version>${springintegration.version}</version>
                    <optional>false</optional>
                </dependency>
                <dependency>
                    <groupId>org.springframework.integration</groupId>
                    <artifactId>spring-integration-jms</artifactId>
                    <version>${springintegration.version}</version>
                    <optional>false</optional>
                </dependency>
    
     <properties>
            <springframework.version>2.5.6</springframework.version>
            <springintegration.version>1.0.4.RELEASE</springintegration.version>
    </properties>

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •