If you could create a sample and attach to a JIRA, we may be able to look at it.
That said, I'm really not sure if the DynamicClient stuff works in OSGi at all. Part of what it does is build up a classpath to compile the generated classes and I'm not sure if that works with the OSGi related classloaders. Also, you could try messing with the Imports for your OSGi bundle. Make sure you import all the cxf stuff. Maybe use a "Require-Bundle=o.a.c.cxf-bundle" type thing. Dan On Monday, August 29, 2011 6:34:15 PM Rodolfo Barbeiro wrote: > Hi everyone! > > I'm try create a simple Dynamic WS Client using JaxWsDynamicClientFactory, > but the error "java.lang.RuntimeException: java.lang.ClassCastException: > class org.apache.cxf.bus.spring.SpringBusFactory" occurs. > > I'm using the CXF version: cxf-bundle-2.3.4.jar > > > Can anyone help me? > > > Rodolfo Barbeiro > > > The stack trace: > > [main] ERROR org.apache.cxf.BusFactory - Failed to determine BusFactory > implementation class name. > > java.lang.ClassCastException: class > org.apache.cxf.bus.spring.SpringBusFactory > > at java.lang.Class.asSubclass(Unknown Source) > > at org.apache.cxf.BusFactory.getBusFactoryClass(BusFactory.java:280) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:207) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:194) > > at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:90) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:137) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:122) > > at > org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory.newInstance > (JaxWsDynamicClientFactory.java:71) > > at > myorg.hjk.engine.service.OSGiServiceTest.testSoapServiceMock(OSGiServiceTes > t.java:133) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) > > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > > at java.lang.reflect.Method.invoke(Unknown Source) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.injectContextAndInv > oke(ProbeInvokerImpl.java:112) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.findAndInvoke(Probe > InvokerImpl.java:71) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.call(ProbeInvokerIm > pl.java:58) > > at > org.ops4j.pax.exam.nat.internal.NativeTestContainer.call(NativeTestContaine > r.java:83) > > at > org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactor.invoke(EagerSingle > StagedReactor.java:85) > > at > org.ops4j.pax.exam.junit.JUnit4TestRunner$2.evaluate(JUnit4TestRunner.java: > 259) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:76) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:50) > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) > > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) > > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) > > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) > > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) > > at org.junit.runners.ParentRunner.run(ParentRunner.java:236) > > at org.ops4j.pax.exam.junit.JUnit4TestRunner.run(JUnit4TestRunner.java:86) > > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestRe > ference.java:49) > > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java: > 38) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:467) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:683) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner > .java:390) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunne > r.java:197) > > [main] ERROR org.apache.cxf.BusFactory - Failed to instantiate bus factory. > > java.lang.ClassCastException: class > org.apache.cxf.bus.spring.SpringBusFactory > > at java.lang.Class.asSubclass(Unknown Source) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:218) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:194) > > at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:90) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:137) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:122) > > at > org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory.newInstance > (JaxWsDynamicClientFactory.java:71) > > at > myorg.hjk.engine.service.OSGiServiceTest.testSoapServiceMock(OSGiServiceTes > t.java:133) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) > > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > > at java.lang.reflect.Method.invoke(Unknown Source) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.injectContextAndInv > oke(ProbeInvokerImpl.java:112) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.findAndInvoke(Probe > InvokerImpl.java:71) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.call(ProbeInvokerIm > pl.java:58) > > at > org.ops4j.pax.exam.nat.internal.NativeTestContainer.call(NativeTestContaine > r.java:83) > > at > org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactor.invoke(EagerSingle > StagedReactor.java:85) > > at > org.ops4j.pax.exam.junit.JUnit4TestRunner$2.evaluate(JUnit4TestRunner.java: > 259) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:76) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:50) > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) > > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) > > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) > > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) > > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) > > at org.junit.runners.ParentRunner.run(ParentRunner.java:236) > > at org.ops4j.pax.exam.junit.JUnit4TestRunner.run(JUnit4TestRunner.java:86) > > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestRe > ference.java:49) > > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java: > 38) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:467) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:683) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner > .java:390) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunne > r.java:197) > > [org.ops4j.pax.exam.junit.JUnit4TestRunner] : Exception > > org.ops4j.pax.exam.TestContainerException: > java.lang.reflect.InvocationTargetException > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.injectContextAndInv > oke(ProbeInvokerImpl.java:118) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.findAndInvoke(Probe > InvokerImpl.java:71) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.call(ProbeInvokerIm > pl.java:58) > > at > org.ops4j.pax.exam.nat.internal.NativeTestContainer.call(NativeTestContaine > r.java:83) > > at > org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactor.invoke(EagerSingle > StagedReactor.java:85) > > at > org.ops4j.pax.exam.junit.JUnit4TestRunner$2.evaluate(JUnit4TestRunner.java: > 259) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:76) > > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja > va:50) > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) > > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) > > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) > > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) > > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) > > at org.junit.runners.ParentRunner.run(ParentRunner.java:236) > > at org.ops4j.pax.exam.junit.JUnit4TestRunner.run(JUnit4TestRunner.java:86) > > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestRe > ference.java:49) > > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java: > 38) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:467) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:683) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner > .java:390) > > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunne > r.java:197) > > Caused by: java.lang.reflect.InvocationTargetException > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) > > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > > at java.lang.reflect.Method.invoke(Unknown Source) > > at > org.ops4j.pax.exam.raw.extender.intern.ProbeInvokerImpl.injectContextAndInv > oke(ProbeInvokerImpl.java:112) > > ... 20 more > > Caused by: java.lang.RuntimeException: java.lang.ClassCastException: class > org.apache.cxf.bus.spring.SpringBusFactory > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:224) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:194) > > at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:90) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:137) > > at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:122) > > at > org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory.newInstance > (JaxWsDynamicClientFactory.java:71) > > at > myorg.hjk.engine.service.OSGiServiceTest.testSoapServiceMock(OSGiServiceTes > t.java:133) > > ... 25 more > > Caused by: java.lang.ClassCastException: class > org.apache.cxf.bus.spring.SpringBusFactory > > at java.lang.Class.asSubclass(Unknown Source) > > at org.apache.cxf.BusFactory.newInstance(BusFactory.java:218) > > ... 31 more -- Daniel Kulp [email protected] http://dankulp.com/blog Talend - http://www.talend.com
