DataBindingRuntimeWireProcessor bug in processing boundary condition of no-arg, no-returnType method -----------------------------------------------------------------------------------------------------
Key: TUSCANY-1682 URL: https://issues.apache.org/jira/browse/TUSCANY-1682 Project: Tuscany Issue Type: Bug Reporter: Scott Kurz If I have a Java method like: void myMethod() it will fail if I expose this method over something like the WS binding which results in trying to set up the Tuscany databinding framework mapping the equivalent WSDL to the no-arg, no-return method. The exception looks like: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.RangeCheck(ArrayList.java:572) at java.util.ArrayList.get(ArrayList.java:347) at org.apache.tuscany.core.databinding.wire.DataBindingRuntimeWireProcessor.isTransformationRequired(DataBindingRuntimeWireProcessor.java:97) at org.apache.tuscany.core.databinding.wire.DataBindingRuntimeWireProcessor.isTransformationRequired(DataBindingRuntimeWireProcessor.java:115) at org.apache.tuscany.core.databinding.wire.DataBindingRuntimeWireProcessor.process(DataBindingRuntimeWireProcessor.java:132) at org.apache.tuscany.sca.core.invocation.ExtensibleWireProcessor.process(ExtensibleWireProcessor.java:40) For my failure, The logical of the source DataType is: [class java.lang.Object org.apache.axiom.om.OMElement Element: {http://basicapp}doNonBlockingReq Type: null] The logical of the target DataType is: [] (empty array) Now.. on the one hand this is a low-priority since this isn't a very useful service operation. On the other hand, the only reason we don't have the same problem on a method like: MyReturnType myMethod() is because for something like the WS binding, the output types will be compared first, and this comparison will return 'true', causing the input types not to be compared. Some sort of special-case (possibly involving recognizing that this is wrapped?) seems to be needed. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]