Hi,

Besides the Dynamic-Import way Gert mentioned here, I think Servicemix also provide another solution.
I believe you're using JBI packaging in OSGi container, right?
If so, you can specify a classpath for your xbean.xml to refer classes from other OSGi bundles, you needn't add dependency in your pom.xml or use provided scope for this dependency(otherwise it will add dependency jar into your SA, which can cause ClassCastException as you encounter, as those dependencies already available in OSGi container). Take a look at[1], the "New in Servicemix 4.2.0" part, I think you just need add
<classpath>
  <library>osgi:servicemix-soap2</library>
</classpath>
to your xbean.xml

This is a common issue when you use JBI pakcaging for SA, but if you use OSGi packaging, you won't see such issue, that's why we encourage to use OSGi packaging for OSGi container. We have cxf-wsdl-first-osgi-package(for OSGi packaging) and cxf-wsdl- first(for JBI packaging) examples shipped with SMX 4.x kit, which can demonstrate what's difference between two packaging.

[1]http://servicemix.apache.org/classloaders.html
Freeman
On 2011-10-27, at 上午5:00, Stefan Essl wrote:

Hi Gert,

thanks, this worked!

Please let me know if you need some more information on this issue!

Thanks,
Stefan


Am 26.10.2011 um 22:41 schrieb Gert Vanthienen:

Stefan,

No problem, sorry for not being more clear. It is a command you can enter in the servicemix console - out takes one parameter, the bundle id for the
servicemix camel bundle.

Regards,

Gert
On Oct 26, 2011 10:20 PM, "Stefan Essl" <
[email protected]> wrote:

Hi Gert,

sorry, but what's a dev:dynamic-import? I'm not that deep into SMX just
yet...

Thanks,
Stefan


Am 26.10.2011 um 22:17 schrieb Gert Vanthienen:

Stefan,

Just quickly glanced over the code and I'm beginning to suspect that the OSGi metadata for our JBI components might be the problem here. I'll
take a
better look in the morning, but if my guess is right, doing a
dev:dynamic-import on the ServiceMix camel bundle will avoid the issue,
even
with the original SA you were using.

Regards,

Gert
On Oct 26, 2011 9:35 PM, "Stefan Essl" <
[email protected]> wrote:

Hi Gert,

I'm running SMX 4.3.0 with the default servicemix-camel component.

If I add servicemix-shared, I get:
java.lang.ClassNotFoundException:
org.apache.servicemix.soap.util.stax.StaxSource in classloader
org.apache.xbean.spring.context.FileSystemXmlApplicationContext

Thanks,
Stefan


Am 26.10.2011 um 21:28 schrieb Gert Vanthienen:

Stefan,


And what happens if you add servicemix-shared as a dependency instead? Anyway, the new exception is because you now have two instances of the
same
class active - one that's living inside the SA and another one in the
shared
library, so that's why you get this odd-looking exception.

One more question: what version of ServiceMix are you using? If these
is
just the default servicemix-camel component and a normal SU/SA, you definitely shouldn't bump into this thing so we should try to figure
out
what's wrong here to get it fixed.


Regards,

Gert Vanthienen
------------------------
FuseSource
Web: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/


On Wed, Oct 26, 2011 at 9:10 PM, Stefan Essl <
[email protected]> wrote:

Hi Gert,

I get this within a servicemix-camel SU. If I add servicemix- soap2 to
the
maven dependencies, the SA deploys fine, but I get a really weird
error
on
execution:

java.lang.ClassCastException:
org.apache.servicemix.soap.util.stax.StaxSource cannot be cast to
org.apache.servicemix.soap.util.stax.StaxSource

Thanks,
Stefan


Am 26.10.2011 um 20:34 schrieb Gert Vanthienen:

Stefan,

What JBI component is the SU that causes the exception using? This
class
should be part of the default servicemix-shared shared library (it's
part
of
servicemix-soap2 to be exact) that contains the code that's being
used
by
all JBI components so you shouldn't really bump into this by using
just
the
standard JBI components.

Regards,

Gert Vanthienen
------------------------
FuseSource
Web: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/


On Wed, Oct 26, 2011 at 7:46 PM, Stefan Essl <
[email protected]> wrote:

Hi everybody,

if I try to deploy my SA, I get the error:
java.lang.ClassNotFoundException:
org.apache.servicemix.soap.util.stax.StaxSource

I guess I'm missing some maven dependencies, but I can't work out
which
one...

Thanks,
Stefan








---------------------------------------------
Freeman Fang

FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com









Reply via email to