-
Bug
-
Resolution: Obsolete
-
Critical
-
None
-
7.2.0.CD12, 7.2.0.CD14
-
None
Some of TCK 7 tests are failing because of
SVR-ERROR: Expected JMSException, received com.ibm.mq.connector.outbound.MQQueueProxy cannot be cast to com.ibm.mq.jms.MQDestination
The full stack trace shows that this issue in IBM 9 resource adapter in com.ibm.mq.jms.MQMessageProducer.send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive, CompletionListener completionListener) line 565:
[javatest.batch] 06:39:27,209 INFO [stdout] (Thread-56) 04-19-2018 06:39:27: SVR: Calling MessageProducer.send(Destination, Message, -1, Message.DEFAULT_PRIORITY, 0L, CompletionListener) [javatest.batch] 06:39:27,210 INFO [stdout] (Thread-56) 04-19-2018 06:39:27: SVR: MyCompletionListener() [javatest.batch] 06:39:27,211 INFO [stdout] (Thread-56) 04-19-2018 06:39:27: SVR-ERROR: Expected JMSException, received com.ibm.mq.connector.outbound.MQQueueProxy cannot be cast to com.ibm.mq.jms.MQDestination [javatest.batch] 06:39:27,214 INFO [stdout] (Thread-56) 04-19-2018 06:39:27: SVR-ERROR: java.lang.ClassCastException: com.ibm.mq.connector.outbound.MQQueueProxy cannot be cast to com.ibm.mq.jms.MQDestination [javatest.batch] 06:39:27,214 INFO [stdout] (Thread-56) at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:565) [javatest.batch] 06:39:27,215 INFO [stdout] (Thread-56) at com.ibm.mq.connector.outbound.MessageProducerWrapper.send(MessageProducerWrapper.java:589) [javatest.batch] 06:39:27,215 INFO [stdout] (Thread-56) at com.sun.ts.tests.jms.core20.messageproducertests.Client.JMSExceptionTests(Client.java:1965) [javatest.batch] 06:39:27,215 INFO [stdout] (Thread-56) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [javatest.batch] 06:39:27,216 INFO [stdout] (Thread-56) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [javatest.batch] 06:39:27,216 INFO [stdout] (Thread-56) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [javatest.batch] 06:39:27,217 INFO [stdout] (Thread-56) at java.lang.reflect.Method.invoke(Method.java:498) [javatest.batch] 06:39:27,217 INFO [stdout] (Thread-56) at com.sun.ts.lib.harness.EETest.run(EETest.java:550) [javatest.batch] 06:39:27,217 INFO [stdout] (Thread-56) at com.sun.ts.lib.harness.ServiceEETest.run(ServiceEETest.java:113) [javatest.batch] 06:39:27,218 INFO [stdout] (Thread-56) at com.sun.ts.tests.common.vehicle.ejb.EJBVehicle.runTest(EJBVehicle.java:70) [javatest.batch] 06:39:27,218 INFO [stdout] (Thread-56) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [javatest.batch] 06:39:27,218 INFO [stdout] (Thread-56) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [javatest.batch] 06:39:27,219 INFO [stdout] (Thread-56) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [javatest.batch] 06:39:27,219 INFO [stdout] (Thread-56) at java.lang.reflect.Method.invoke(Method.java:498) [javatest.batch] 06:39:27,219 INFO [stdout] (Thread-56) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52) [javatest.batch] 06:39:27,220 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,220 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509) [javatest.batch] 06:39:27,220 INFO [stdout] (Thread-56) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47) [javatest.batch] 06:39:27,221 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:135) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45) [javatest.batch] 06:39:27,222 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:40) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.stateful.StatefulComponentInstanceInterceptor.processInvocation(StatefulComponentInstanceInterceptor.java:59) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509) [javatest.batch] 06:39:27,223 INFO [stdout] (Thread-56) at org.jboss.weld.module.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:81) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:89) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.remote.EJBRemoteTransactionPropagatingInterceptor.processInvocation(EJBRemoteTransactionPropagatingInterceptor.java:89) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:47) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100) [javatest.batch] 06:39:27,224 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.deployment.processors.StartupAwaitInterceptor.processInvocation(StartupAwaitInterceptor.java:22) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:67) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.interceptors.EjbExceptionTransformingInterceptorFactories$1.processInvocation(EjbExceptionTransformingInterceptorFactories.java:80) [javatest.batch] 06:39:27,225 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,235 INFO [stdout] (Thread-56) at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [javatest.batch] 06:39:27,235 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:60) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:438) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:619) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:57) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:198) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.wildfly.security.auth.server.SecurityIdentity.runAsFunctionEx(SecurityIdentity.java:380) [javatest.batch] 06:39:27,236 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.remote.AssociationImpl.invokeWithIdentity(AssociationImpl.java:541) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.remote.AssociationImpl.invokeMethod(AssociationImpl.java:536) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at org.jboss.as.ejb3.remote.AssociationImpl.lambda$receiveInvocationRequest$0(AssociationImpl.java:194) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at java.lang.Thread.run(Thread.java:748) [javatest.batch] 06:39:27,237 INFO [stdout] (Thread-56) at org.jboss.threads.JBossThread.run(JBossThread.java:485)
I've decompiled IBM MQ 9 RA and problem is in:
/* */ public void send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive, CompletionListener completionListener) /* */ throws JMSException, MessageFormatException, InvalidDestinationException, IllegalArgumentException, UnsupportedOperationException /* */ { /* 558 */ if (Trace.isOn) { /* 559 */ Trace.entry(this, "com.ibm.mq.jms.MQMessageProducer", "send(Destination,Message,int,int,long,CompletionListener)", new Object[] { destination, message, /* */ /* 561 */ Integer.valueOf(deliveryMode), Integer.valueOf(priority), Long.valueOf(timeToLive), completionListener }); /* */ } /* */ /* */ problematic line ->> /* 565 */ JmsDestination dest = destination == null ? null : (JmsDestination)((MQDestination)destination).validateDestination(); /* 566 */ Message msg = message; /* 567 */ if ((message instanceof JMSMessage)) /* */ {
Looking into the code this problematic class cast conversion is also in MQMessageProducer.send(Destination destination, Message message).
TCK 7 tests faling because of this issue:
[javatest.batch] FAILED........com/sun/ts/tests/jms/core20/messageproducertests/Client.java#JMSExceptionTests_from_ejb [javatest.batch] FAILED........com/sun/ts/tests/jms/core20/messageproducertests/Client.java#JMSExceptionTests_from_jsp [javatest.batch] FAILED........com/sun/ts/tests/jms/core20/messageproducertests/Client.java#JMSExceptionTests_from_servlet