sending outbound message using NotifyQueues
vikas_sm Dec 21, 2007 6:14 PMHello All,
I am trying to send an outbound message (ESB aware message)to Websphere MQ using NotifyQueues. All incoming message are sent to jboss messaging and are converted to ESB aware message by the gateway.
After going through forums i found that there is no direct support to send outbound message using gateway in jbossesb-4.2.1GA(correct me if i am wrong) hence i am using notifier to send outbound message
I am getting following exception :-
org.jboss.soa.esb.notification.NotificationException: javax.jms.JMSException: MQJMS1044: String is not a valid hexadecimal number - JBM-53251
at org.jboss.soa.esb.notification.NotifyJMS.sendNotification(NotifyJMS.java:302)
at org.jboss.soa.esb.notification.NotificationList.notifyAll(NotificationList.java:164)
at org.jboss.soa.esb.actions.Notifier.notifyOK(Notifier.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.soa.esb.listeners.message.ActionProcessorMethodInfo.processSuccess(ActionProcessorMethodInfo.java:154)
at org.jboss.soa.esb.listeners.message.OverriddenActionLifecycleProcessor.processSuccess(OverriddenActionLifecycleProcessor.java:108)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.notifySuccess(ActionProcessingPipeline.java:610)
at org.jboss.soa.esb.notification.NotifyJMS.sendNotification(NotifyJMS.java:302)
at org.jboss.soa.esb.notification.NotificationList.notifyAll(NotificationList.java:164)
at org.jboss.soa.esb.actions.Notifier.notifyOK(Notifier.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.soa.esb.listeners.message.ActionProcessorMethodInfo.processSuccess(ActionProcessorMethodInfo.java:154)
at org.jboss.soa.esb.listeners.message.OverriddenActionLifecycleProcessor.processSuccess(OverriddenActionLifecycleProcessor.java:108)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.notifySuccess(ActionProcessingPipeline.java:610)
The reason for this exception from the MQCode is as followed
MQJMS1044 String is not a valid hexadecimal number - {0}.
Explanation: An attempt was made to specify a group ID or correlation ID which starts with the prefix "ID:" but is not followed by a well-formed hex value; or an attempt was made to receive a message which contains an RFH2 property of type bin.hex that does not have a well-formed hex value.
User Response: Ensure that a valid hex value always follows the "ID:" prefix when setting group ID or correlation ID values. Ensure that any RFH2 headers generated by non-JMS applications are well-formed.
I can see that the correlation Id generated by the gateway is not a valid hexidecimal value: . Please check the text in bold.
header: [ To: JMSEpr [ PortReference < <wsa:Address jms://localhost/queue/quickstart_helloworld_Request_esb/>, <wsa:ReferenceProperties jbossesb:java.nam
ing.factory.initial : org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties jbossesb:java.naming.provider.url : jnp://127.0.0.1:1099/>, <ws
a:ReferenceProperties jbossesb:java.naming.factory.url.pkgs : org.jboss.naming:org.jnp.interfaces/>, <wsa:ReferenceProperties jbossesb:destination-type :
queue/>, <wsa:ReferenceProperties jbossesb:specification-version : 1.1/>, <wsa:ReferenceProperties jbossesb:connection-factory : ClusteredConnectionFact
ory/>, <wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties jbossesb:acknowledge-mode : 1/> > ] MessageID: ID:JBM-53251 Relate
sTo: jms:correlationID#ID:JBM-53760
What is going wrong here?
Any help will be appreciated.
Thanks/Vikas