Hi,
I have a service with a Object array as input like this: 

@Remotable
public interface CrmService {
        
        public void test(String[] arr);
        
}

the service is exposed as web service and the WSDL is generated by
Tuscany.

I can generate a Java client, but when I call the service the server
says:

GRAVE: java.lang.IllegalArgumentException: Argument is not an array
org.apache.tuscany.sca.databinding.TransformationException:
java.lang.IllegalArgumentException: Argument is not an array
        at
org.apache.tuscany.sca.core.databinding.transformers.Array2ArrayTransformer.transform(Array2ArrayTransformer.java:100)
        at org.apache.tuscany.sca.databinding.DefaultTransformerExtensionPoint
$LazyPullTransformer.transform(DefaultTransformerExtensionPoint.java:209)
        at
org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediate(MediatorImpl.java:116)
        at
org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:232)
        at
org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:46)
        at org.apache.tuscany.sca.databinding.DefaultTransformerExtensionPoint
$LazyPullTransformer.transform(DefaultTransformerExtensionPoint.java:209)
        at
org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediate(MediatorImpl.java:116)
        at
org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediateInput(MediatorImpl.java:444)
        at
org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.processRequest(DataTransformationInterceptor.java:69)
        at
org.apache.tuscany.sca.core.invocation.InterceptorAsyncImpl.invoke(InterceptorAsyncImpl.java:57)
        at
org.apache.tuscany.sca.core.invocation.RuntimeInvoker.invoke(RuntimeInvoker.java:125)
        at
org.apache.tuscany.sca.core.invocation.RuntimeInvoker.invoke(RuntimeInvoker.java:108)
        at
org.apache.tuscany.sca.core.assembly.impl.RuntimeEndpointImpl.invoke(RuntimeEndpointImpl.java:298)
        at
org.apache.tuscany.sca.binding.ws.jaxws.JAXWSBindingProvider.invoke(JAXWSBindingProvider.java:207)
        at
org.apache.tuscany.sca.binding.ws.jaxws.JAXWSBindingProvider.invoke(JAXWSBindingProvider.java:61)
        at com.sun.xml.internal.ws.api.server.InstanceResolver
$1.invokeProvider(InstanceResolver.java:245)
        at com.sun.xml.internal.ws.server.InvokerTube
$2.invokeProvider(InvokerTube.java:145)
        at
com.sun.xml.internal.ws.server.provider.SyncProviderInvokerTube.processRequest(SyncProviderInvokerTube.java:67)
        at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:587)
        at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:546)
        at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:531)
        at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:428)
        at com.sun.xml.internal.ws.server.WSEndpointImpl
$2.process(WSEndpointImpl.java:232)
        at com.sun.xml.internal.ws.transport.http.HttpAdapter
$HttpToolkit.handle(HttpAdapter.java:460)
        at
com.sun.xml.internal.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:233)
        at
com.sun.xml.internal.ws.transport.http.server.WSHttpHandler.handleExchange(WSHttpHandler.java:95)
        at
com.sun.xml.internal.ws.transport.http.server.WSHttpHandler.handle(WSHttpHandler.java:80)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:83)
        at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:86)
        at sun.net.httpserver.ServerImpl$Exchange
$LinkHandler.handle(ServerImpl.java:589)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:83)
        at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:561)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.IllegalArgumentException: Argument is not an array
        at java.lang.reflect.Array.getLength(Native Method)
        at
org.apache.tuscany.sca.core.databinding.transformers.Array2ArrayTransformer.transform(Array2ArrayTransformer.java:89)
        ... 35 more

Reply via email to