Not able to access any of those solace specific headers,
@StreamListener("solace-test") public void onMessage(Message<String> message){ Destination destination = message.getHeaders().get(SolaceHeaders.DESTINATION, Destination.class); System.out.println("DESTINATION :: " + destination.getName()); System.out.println("MESSAGE " + message.getPayload()); System.out.println("solace_correlationId " + message.getHeaders().get("solace_correlationId")); System.out.println("solace_destination " + message.getHeaders().get("solace_destination")); message.getHeaders().forEach((k,v)-> { System.out.println("KEY :: " + k + " Value " + v ); }); }
Also another question is does solace scs use JMSXDeliveryCount internally for any purpose?
Comments
-
Hi @akg17,
Also another question is does solace scs use JMSXDeliveryCount internally for any purpose?
Easier question first: Nope, our Spring Cloud Stream binder does not use JMS and would ignore this property. You can set/get it just like any custom property.
As for not being able to see the headers can you verify what Solace binder version you are using? To access the headers I believe you'll need the latest
solace-spring-cloud
which is v2.1.0. Example pom hereSide note: Don't use
@StreamListener
anymore. That is the v2 way of things and was effectively deprecated in v3 of Spring Cloud Stream. Check out our samples here (or the Spring Cloud Stream reference guide) if you want to see the v3 way0