Posted: Wed Mar 10, 2010 2:56 pm Post subject: MQ Export:No operation on the interface matching the method
Newbie
Joined: 26 Feb 2010 Posts: 7
I am creating the MQRFH2 header for the XML message using the following ESQL code and sending it to Queue. Websphere process server's mq export listens on this queue and process the message.
But I am getting an exception in WPS server.
SET OutputRoot.MQRFH2.(MQRFH2.Field)StrucId = MQRFH_STRUC_ID;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = 2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Struclength = MQRFH_STRUC_LENGTH_FIXED_2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Encoding = MQENC_NATIVE;
SET OutputRoot.MQRFH2.(MQRFH2.Field)CodedCharSetId = MQCCSI_INHERIT;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = 'MQSTR';
SET OutputRoot.MQRFH2.(MQRFH2.Field)Flags = MQRFH_NONE;
SET OutputRoot.MQRFH2.(MQRFH2.Field)NameValueCCSID = 1208;
SET OutputRoot.MQRFH2.mcd.Msd = 'XMLNSC';
--SET OutputRoot.MQRFH2.mcd.Set = 'A2KNUP4002001';
SET OutputRoot.MQRFH2.mcd.Set = 'HelloOSmodule_msg_set';
--SET OutputRoot.MQRFH2.mcd.Type = 'http://HelloOSModule/HelloOSInterface';
SET OutputRoot.MQRFH2.mcd.Type = 'HelloOSoperation';
SET OutputRoot.MQRFH2.mcd.Fmt = 'XML';
--
SET OutputRoot.MQRFH2.(MQRFH2.Field)Struclength = LENGTH(OutputRoot.MQRFH2);
set OutputRoot.XMLNSC.ns2:HelloOSoperation = InputRoot.XMLNSC.ns2:HelloOSoperation;
=============
Exception on WPS:
CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "onMessage" on bean "BeanId(HelloOSModuleApp#HelloOSModuleEJB.jar#_export.mq_ExportMQ, null)". Exception data: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:37)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:96)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Caused by: com.ibm.websphere.sca.ServiceRuntimeException: No operation on the interface matching the method 'mcd://XMLNSC/HelloOSmodule_msg_set/HelloOSoperation?format=XML'
I am using the function selector as "MQ uses type information as native function".
What I am doing wrong in setting the msd,set,type and format?
My Env:
Broker 6.0
WPS 6.1
MQ 6.0
help me out to solve the issue. Thanks in advance.
It looks like WPS is using the MQ JMS type information if available.
You could set the native function in WPS (in the export binding) for the operation to match the type URI 'mcd://XMLNSC/HelloOSmodule_msg_set/HelloOSoperation?format=XML'.
And finally there are several options for the function selector on the WPS side, you may find that one of the other options is more useful / obvious.
You could set the native function in WPS (in the export binding) for the operation to match the type URI 'mcd://XMLNSC/HelloOSmodule_msg_set/HelloOSoperation?format=XML'.
It is working fine after setting the URI to the native method in mq export in the WPS.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum