I have a webservice which is written Java first, this was initially using the
JAXB binding but we found we needed more control over the minOccurs etc so
decided to switch to using the Aegis data binding.
I am testing this webservice with SOAPUI, when using the JAXB data binding
everything works ok all calls to methods do what is expected and return was
is expected.
However when using the Aegis databinding only the version first method
invocation works, after that all further method calls fail with the
following exception:
Caused by: java.lang.IllegalArgumentException: argument type mismatch
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:597)
at
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:173)
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:89)
... 40 more
I added the LoggingIn interceptor and I can see the contents of the first
message which works and the second which doesn't are identical.
Should I be able to use SOAPUI to test out this service with Aegis
databinding?
Do I have todo anything other than add the Databinding as such when using
Aegis:
// Use the Aegis data binding so we can control the minoccurs
and nillable values
AegisDatabinding dataBinding = new AegisDatabinding();
dataBinding.getAegisContext().getTypeCreationOptions().setDefaultMinOccurs(1);
// Publish the web service
EndpointImpl jaxWsEndpoint = new EndpointImpl(endpointObject);
jaxWsEndpoint.setDataBinding(dataBinding);
Thanks,
James
--
View this message in context:
http://cxf.547215.n5.nabble.com/CXF-and-Aegis-data-binding-tp4714865p4714865.html
Sent from the cxf-user mailing list archive at Nabble.com.