I've been able to recreate this problem by using a non-IBM JRE with the WebSphere JMS client. Turns out the Tuscany JMS binding needs to a special property added to the JNDI initial context environment when NOT running on an IBM JRE. I've updated the binding-jms code to do this and it works ok now for me could you give it a try?
...ant On Tue, Jun 10, 2008 at 8:34 AM, Nishant Joshi <[EMAIL PROTECTED]> wrote: > Hi Ant, > Thanks for your investigation on this. > I m getting exception with WebSphere JMS client with a Sun JDK... > below is the stacktrace for it... > > javax.naming.NamingException: Failed to initialize the ORB [Root exception > is java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl] > at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:314) > at > com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:383) > at > com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:113) > at > com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:428) > at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144) > at javax.naming.InitialContext.lookup(InitialContext.java:351) > at > org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory.jndiLookUp(JMSResourceFactory.java:149) > at > org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory.lookupDestination(JMSResourceFactory.java:129) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.lookupDestinationQueue(JMSBindingInvoker.java:134) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.lookupDestination(JMSBindingInvoker.java:83) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.<init>(JMSBindingInvoker.java:66) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingReferenceBindingProvider.createInvoker(JMSBindingReferenceBindingProvider.java:117) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.addReferenceBindingInterceptor(RuntimeWireImpl.java:228) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.initInvocationChains(RuntimeWireImpl.java:167) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.getInvocationChains(RuntimeWireImpl.java:109) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.getInvocationChain(JDKInvocationHandler.java:243) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:148) > at $Proxy15.sayHello(Unknown Source) > at > helloworld.HelloWorldClientImpl.sayHello(HelloWorldClientImpl.java:25) > 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.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:109) > at > org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(SCABindingInvoker.java:61) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:286) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154) > at > org.apache.tuscany.sca.core.invocation.CglibProxyFactory$CglibMethodInterceptor.intercept(CglibProxyFactory.java:149) > at > helloworld.HelloWorldClientImpl$$EnhancerByCGLIB$$e8cbf9a4.sayHello(<generated>) > > at helloworld.JMSClient.main(JMSClient.java:20) > at helloworld.ClientTest.testServiceCall(ClientTest.java:20) > 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.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMethodRunner.java:99) > at > org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethodRunner.java:81) > at > org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34) > at > org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.java:75) > at > org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java:45) > at > org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:75) > at > org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:36) > at > org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42) > at > org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34) > at > org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52) > at > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) > at org.apache.maven.surefire.Surefire.run(Surefire.java:177) > 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.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338) > at > org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997) > Caused by: java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl > at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:85) > at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:174) > at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:97) > at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:73) > at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:386) > at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:305) > ... 54 more > javax.naming.NamingException: Failed to initialize the ORB [Root exception > is java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl] > at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:314) > at > com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:383) > at > com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:113) > at > com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:428) > at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144) > at javax.naming.InitialContext.lookup(InitialContext.java:351) > at > org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory.jndiLookUp(JMSResourceFactory.java:149) > at > org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory.lookupDestination(JMSResourceFactory.java:129) > at > org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory.createDestination(JMSResourceFactory.java:137) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.lookupDestinationQueue(JMSBindingInvoker.java:152) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.lookupDestination(JMSBindingInvoker.java:83) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingInvoker.<init>(JMSBindingInvoker.java:66) > at > org.apache.tuscany.sca.binding.jms.provider.JMSBindingReferenceBindingProvider.createInvoker(JMSBindingReferenceBindingProvider.java:117) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.addReferenceBindingInterceptor(RuntimeWireImpl.java:228) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.initInvocationChains(RuntimeWireImpl.java:167) > at > org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.getInvocationChains(RuntimeWireImpl.java:109) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.getInvocationChain(JDKInvocationHandler.java:243) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:148) > at $Proxy15.sayHello(Unknown Source) > at > helloworld.HelloWorldClientImpl.sayHello(HelloWorldClientImpl.java:25) > 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.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:109) > at > org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(SCABindingInvoker.java:61) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:286) > at > org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154) > at > org.apache.tuscany.sca.core.invocation.CglibProxyFactory$CglibMethodInterceptor.intercept(CglibProxyFactory.java:149) > at > helloworld.HelloWorldClientImpl$$EnhancerByCGLIB$$e8cbf9a4.sayHello(<generated>) > > at helloworld.JMSClient.main(JMSClient.java:20) > at helloworld.ClientTest.testServiceCall(ClientTest.java:20) > 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.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMethodRunner.java:99) > at > org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethodRunner.java:81) > at > org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34) > at > org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.java:75) > at > org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java:45) > at > org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:75) > at > org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:36) > at > org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42) > at > org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34) > at > org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52) > at > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) > at org.apache.maven.surefire.Surefire.run(Surefire.java:177) > 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.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338) > at > org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997) > Caused by: java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl > at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:85) > at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:174) > at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:97) > at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:73) > at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:386) > at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:305) > ... 55 more > > any idea in this ? > > -- > Thanks > Nishant Joshi >