1

I see tonnes of logs for all header properties that have hyphen -

[30-5-18 17:13:14:321 CEST] 00001622 SystemOut O WARN [integration.jms.DefaultJmsHeaderMapper] failed to map Message header 'Keep-Alive' to JMS property javax.jms.MessageFormatException: CWSIA0112E: The property name Keep-Alive is not a valid Java identifier.

[30-5-18 17:13:14:321 CEST] 00001622 SystemOut O WARN [integration.jms.DefaultJmsHeaderMapper] failed to map Message header 'Transfer-Encoding' to JMS property javax.jms.MessageFormatException: CWSIA0112E: The property name Transfer-Encoding is not a valid Java identifier.

How can I resolve all these errors and warnings Does a custom header mapper help, any example? Using Spring boot 1.4.3 and integration version 4.3.6. Application running on websphere default JMS provider 8.5.x

Thanks

Kris Swat
  • 788
  • 1
  • 10
  • 39

1 Answers1

1

I believe that the error means that you can't use dash in the property name.

You need to re-map this Keep-Alive into something like KeepAlive using HeaderEnricher and then remove it using HeaderFilter.

Artem Bilan
  • 113,505
  • 11
  • 91
  • 118
  • Thanks Artem. Can you please give an example. I think the issue is because of differences betwen spring jms and java jms. Some are like jms_type and other is JMSType kind of format – Kris Swat May 31 '18 at 06:37
  • There is no issue with Spring JMS, because it is just a Spring API around standard Java JMS. The issue with the IBM JMS vendor. I believe it just doesn't like a dash (`-`) symbol in that `Keep-Alive` name. That's why I suggest you to re-map it to something other or just drop it off, if you are fine to live without it in downstream. – Artem Bilan May 31 '18 at 15:23
  • ok. Thanks Artem. added a new channel. – Kris Swat Jun 01 '18 at 10:17