[ 
https://issues.apache.org/jira/browse/TUSCANY-2331?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Becker updated TUSCANY-2331:
--------------------------------

    Attachment: BServiceDan.wsdl

I am no WSDL expert, but it seems to be a not valid WSDL file to me. It seems 
that the number of operations in the SOAP binding are not the same as the 
number of operations in the port type. I regenerated the WSDL SOAP bindings 
from Eclipse and came up with a different WSDL that seems to work. See the 
second attachment, BServiceDan.wsdl.

If you disagree with this assessment, please reopen the the JIRA, and provide 
the test case and how you generated your WSDL.

Thanks, Dan

> Got expection where the wsdl defines an operation without input
> ---------------------------------------------------------------
>
>                 Key: TUSCANY-2331
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-2331
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Core Runtime
>    Affects Versions: Java-SCA-Next
>            Reporter: Gilbert Kwan
>         Attachments: BService.wsdl, BServiceDan.wsdl
>
>
> Got following exception in running where the wsdl defines an operation 
> without input parameter.
> java.lang.IllegalArgumentException: Pass-by-value is not supported for the 
> given object
>        at 
> org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(JavaBeansDataBinding.java:102)
>        at 
> org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint$LazyDataBinding.copy(DefaultDataBindingExtensionPoint.java:171)
>        at 
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copy(PassByValueInterceptor.java:235)
>        at 
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copyFault(PassByValueInterceptor.java:130)
>        at 
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:115)
>        at 
> org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(SCABindingInvoker.java:61)
>        at 
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:108)
>        at 
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:286)
>        at 
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154)
>        at $Proxy7.getB1Name(Unknown Source)
>        at 
> org.apache.tuscany.sca.vtest.wsbinding.nowsdl.NoWsdlTestCase.testNoWsdl(NoWsdlTestCase.java:62)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:618)
>        at 
> org.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMethodRunner.java:99)
>        at 
> org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethodRunner.java:81)
>        at 
> org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
>        at 
> org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.java:75)
>        at 
> org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java:45)
>        at 
> org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:75)
>        at 
> org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:36)
>        at 
> org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42)
>        at 
> org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
>        at 
> org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)
>        at 
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
>        at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>        at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
>        at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
>        at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
>        at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> Caused by: java.io.NotSerializableException:
> org.apache.axiom.om.impl.llom.OMElementImpl
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1113)
>        at 
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1467)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1439)
>        at 
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1382)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1111)
>        at 
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1467)
>        at 
> java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:414)
>        at java.lang.Throwable.writeObject(Throwable.java:320)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:618)
>        at 
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1431)
>        at 
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1382)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1111)
>        at 
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1467)
>        at 
> java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:414)
>        at java.lang.Throwable.writeObject(Throwable.java:320)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:618)
>        at 
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1431)
>        at 
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1382)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1111)
>        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:325)
>        at 
> org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(JavaBeansDataBinding.java:71)
>        ... 30 more
> See getName in attached wsdl.
>    <wsdl:operation name="getName">
>        <wsdl:output message="tns:getNameResponse"></wsdl:output>
>    </wsdl:operation>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to