Hello,
I'm using Servicemix to expose a webservice. I'm having a problem with it
that is related to XFire. Basically when I try to call the webservice, I
get an error claiming that my xmlbean class is not visible to the
classloader. I tried moving my jar file containing my xmlbean class up into
the lib directory for servicemix. This made my error change to a
classnotfounderror for XmlObject. When I added the xmlbeans jar file to the
lib directory, it went back to the original error. My guess is that it's
not a problem with the classloader seeing my xmlbean object, it's a problem
with something else depended upon not being loaded. Has anyone seen this
sort of problem before with XFire? I'm starting to think I should drop the
use of xmlbeans and just go with JAXB since I seem to have nothing but extra
headaches trying to use XMLBeans with XFIRE (I prefer xmlbeans).
ERROR - DefaultFaultHandler - Fault occurred!
java.lang.IllegalArgumentException: interface
com.bae.gse.salina.service.communication.NotificationsDocument is not v
rom class loader
at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
at org.codehaus.xfire.aegis.type.basic.BeanType.readObject(
BeanType.java:99)
at org.codehaus.xfire.aegis.AegisBindingProvider.readParameter(
AegisBindingProvider.java:155)
at org.codehaus.xfire.service.binding.AbstractBinding.read(
AbstractBinding.java:206)
at org.codehaus.xfire.service.binding.DocumentBinding.readMessage(
DocumentBinding.java:32)
at org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(
SoapBodyHandler.java:42)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(
HandlerPipeline.java:131)
at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
DefaultEndpoint.java:64)
at org.codehaus.xfire.transport.AbstractChannel.receive(
AbstractChannel.java:38)
at org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.doProcess(
Jsr181ExchangeProcessor.java:111)
at org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(
Jsr181ExchangeProcessor.java:66)
at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
AsyncBaseLifeCycle.java:410)
at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
BaseLifeCycle.java:43)