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]