You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Paulo Henrique Trecenti <pt...@gmail.com> on 2007/05/02 16:42:27 UTC
Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Hi,
I found a small bug in Input2InputTransformer.java (179)
"Object[] newArgs = new Object[source.length];
for (int i = 0; i < source.length; i++) {
Object child = mediator.mediate(source[i],
sourceType.getLogical().get(i), targetType.getLogical().get(i),
context.getMetadata());
newArgs[i] = child;
}"
When try parse a java to wsdl
My java interface method is "public TimeSlot editReservation(int
timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
I have 4 input params
and my wsdl have 1 element with an type having 4 paramenters
When run this code whe have an IndexOutOfBoundsException
"Exception in thread "main" java.lang.IndexOutOfBoundsException : Index: 1,
Size: 1
at java.util.ArrayList.RangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at
org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
(Input2InputTransformer.java :179)
at
org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
(Input2InputTransformer.java:1)
at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
MediatorImpl.java:83)
at
org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform(
DataBindingInteceptor.java:189)
at org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
(DataBindingInteceptor.java:86)
at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
AbstractInvocationHandler.java:91)
at
org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke(
JDKInvocationHandler.java:150)"
Not to be that I must work with OMElement in my java interface.
--
Paulo Henrique Trecenti
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Paulo Henrique Trecenti <pt...@gmail.com>.
I am not certain if that is the way.
2007/5/4, Paulo Henrique Trecenti <pt...@gmail.com>:
>
> I have seen various discussions around the databinding and I don't know if
> my suggestions can maybe many differents but i have some modifications in
> the ElementInfo and XMLType to store the attributes maxOccurs and minOccurs
> IMHO this is the first step but is very important define the model of
> databinding.
> I had seen in Java2SimpleTypeTransformer and he must be modified to
> forward the maxOccurs, minOccurs and the value acctualy just send a String.
> It are this for now, but we have many others to make this work fine.
>
> For the jira TUSCANY-1072 I have make modifications in
> WrapperInfo.getUnwrappedInputType() to solve that. But when parse a
> physical type of any Array we have a crash in the name of the dataType.
>
> How I can send thats paths for avaliations.
>
> Thanks.
>
> 2007/5/4, Luciano Resende <lu...@gmail.com>:
> >
> > Thanks Paulo, please create a Jira and provide a patch when you have
> > something working, and Raymond or I could review and apply your patch.
> >
> > On 5/2/07, Paulo Henrique Trecenti < ptrecenti@gmail.com> wrote:
> > >
> > > Ok I can work in this task, because I need this.
> > >
> > > Currently I am making one sample where I would like to donate for the
> > > project sca tuscany, the Luciano Resende is helping me very in this.
> > >
> > > Thanks.
> > >
> > > 2007/5/2, Raymond Feng <en...@gmail.com>:
> > > >
> > > > Hi,
> > > >
> > > > Thank you for reporting this. Actually, the problem is not in the
> > > > Input2InputTransformer. It's related to how we map a java interface
> > to a
> > > > WSDL portType.
> > > >
> > > > For a wrapper style (please see WS-JAX spec for the definition) WSDL
> > > > operation with the following input wrapper element, we don't support
> > it
> > > > yet
> > > > if the child element such as "resourcesID" with maxOccurs>1.
> > > >
> > > > <xs:complexType name="editReservation">
> > > > <xs:sequence>
> > > > <xs:element name="timeSlotID" type="xs:int"/>
> > > > <xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
> > > > <xs:element name="purpose" type="xs:string" minOccurs="0"/>
> > > > <xs:element name="resourcesID" type="xs:int"
> > maxOccurs="unbounded"
> > > > minOccurs="0"/>
> > > > </xs:sequence>
> > > > </xs:complexType>
> > > >
> > > > In line 382 of
> > > > org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java,
> > > there
> > > > is
> > > > a "TODO" :-).
> > > >
> > > > Thanks,
> > > > Raymond
> > > >
> > > > ----- Original Message -----
> > > > From: "Paulo Henrique Trecenti" <pt...@gmail.com>
> > > > To: < tuscany-dev@ws.apache.org>
> > > > Sent: Wednesday, May 02, 2007 7:42 AM
> > > > Subject: Throwable Input2InputTransformer.java (179)
> > > > IndexOutOfBoundsException
> > > >
> > > >
> > > > > Hi,
> > > > >
> > > > > I found a small bug in Input2InputTransformer.java (179)
> > > > >
> > > > > "Object[] newArgs = new Object[source.length ];
> > > > > for (int i = 0; i < source.length; i++) {
> > > > > Object child = mediator.mediate(source[i],
> > > > > sourceType.getLogical().get(i), targetType.getLogical().get(i),
> > > > > context.getMetadata());
> > > > > newArgs[i] = child;
> > > > > }"
> > > > >
> > > > > When try parse a java to wsdl
> > > > >
> > > > > My java interface method is "public TimeSlot editReservation(int
> > > > > timeSlotID, String requestedBy, String purpose, int[]
> > resourcesID);"
> > > > >
> > > > > I have 4 input params
> > > > >
> > > > > and my wsdl have 1 element with an type having 4 paramenters
> > > > >
> > > > > When run this code whe have an IndexOutOfBoundsException
> > > > >
> > > > > "Exception in thread "main" java.lang.IndexOutOfBoundsException :
> > > Index:
> > > > > 1,
> > > > > Size: 1
> > > > > at java.util.ArrayList.RangeCheck(Unknown Source)
> > > > > at java.util.ArrayList.get(Unknown Source)
> > > > > at
> > > > >
> > > >
> > >
> > org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > > (Input2InputTransformer.java :179)
> > > > > at
> > > > >
> > > >
> > >
> > org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > > (Input2InputTransformer.java:1)
> > > > > at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> > > > > MediatorImpl.java:83)
> > > > > at
> > > > >
> > >
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform
> > > > (
> > > > > DataBindingInteceptor.java:189)
> > > > > at
> > > > >
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> > > > > (DataBindingInteceptor.java:86)
> > > > > at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke
> > (
> > > > > AbstractInvocationHandler.java:91)
> > > > > at
> > > > >
> > >
> > org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke
> > > > (
> > > > > JDKInvocationHandler.java:150)"
> > > > >
> > > > > Not to be that I must work with OMElement in my java interface.
> > > > >
> > > > >
> > > > > --
> > > > > Paulo Henrique Trecenti
> > > > >
> > > >
> > > >
> > > >
> > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> > > >
> > > >
> > >
> > >
> > > --
> > > Paulo Henrique Trecenti
> > >
> >
> >
> >
> > --
> > Luciano Resende
> > http://people.apache.org/~lresende
> > <http://people.apache.org/%7Elresende>
> >
>
>
>
> --
> Paulo Henrique Trecenti
--
Paulo Henrique Trecenti
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Paulo Henrique Trecenti <pt...@gmail.com>.
I have seen various discussions around the databinding and I don't know if
my suggestions can maybe many differents but i have some modifications in
the ElementInfo and XMLType to store the attributes maxOccurs and minOccurs
IMHO this is the first step but is very important define the model of
databinding.
I had seen in Java2SimpleTypeTransformer and he must be modified to forward
the maxOccurs, minOccurs and the value acctualy just send a String.
It are this for now, but we have many others to make this work fine.
For the jira TUSCANY-1072 I have make modifications in
WrapperInfo.getUnwrappedInputType() to solve that. But when parse a physical
type of any Array we have a crash in the name of the dataType.
How I can send thats paths for avaliations.
Thanks.
2007/5/4, Luciano Resende <lu...@gmail.com>:
>
> Thanks Paulo, please create a Jira and provide a patch when you have
> something working, and Raymond or I could review and apply your patch.
>
> On 5/2/07, Paulo Henrique Trecenti <pt...@gmail.com> wrote:
> >
> > Ok I can work in this task, because I need this.
> >
> > Currently I am making one sample where I would like to donate for the
> > project sca tuscany, the Luciano Resende is helping me very in this.
> >
> > Thanks.
> >
> > 2007/5/2, Raymond Feng <en...@gmail.com>:
> > >
> > > Hi,
> > >
> > > Thank you for reporting this. Actually, the problem is not in the
> > > Input2InputTransformer. It's related to how we map a java interface to
> a
> > > WSDL portType.
> > >
> > > For a wrapper style (please see WS-JAX spec for the definition) WSDL
> > > operation with the following input wrapper element, we don't support
> it
> > > yet
> > > if the child element such as "resourcesID" with maxOccurs>1.
> > >
> > > <xs:complexType name="editReservation">
> > > <xs:sequence>
> > > <xs:element name="timeSlotID" type="xs:int"/>
> > > <xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
> > > <xs:element name="purpose" type="xs:string" minOccurs="0"/>
> > > <xs:element name="resourcesID" type="xs:int" maxOccurs="unbounded"
> > > minOccurs="0"/>
> > > </xs:sequence>
> > > </xs:complexType>
> > >
> > > In line 382 of
> > > org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java,
> > there
> > > is
> > > a "TODO" :-).
> > >
> > > Thanks,
> > > Raymond
> > >
> > > ----- Original Message -----
> > > From: "Paulo Henrique Trecenti" <pt...@gmail.com>
> > > To: <tu...@ws.apache.org>
> > > Sent: Wednesday, May 02, 2007 7:42 AM
> > > Subject: Throwable Input2InputTransformer.java (179)
> > > IndexOutOfBoundsException
> > >
> > >
> > > > Hi,
> > > >
> > > > I found a small bug in Input2InputTransformer.java (179)
> > > >
> > > > "Object[] newArgs = new Object[source.length];
> > > > for (int i = 0; i < source.length; i++) {
> > > > Object child = mediator.mediate(source[i],
> > > > sourceType.getLogical().get(i), targetType.getLogical().get(i),
> > > > context.getMetadata());
> > > > newArgs[i] = child;
> > > > }"
> > > >
> > > > When try parse a java to wsdl
> > > >
> > > > My java interface method is "public TimeSlot editReservation(int
> > > > timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
> > > >
> > > > I have 4 input params
> > > >
> > > > and my wsdl have 1 element with an type having 4 paramenters
> > > >
> > > > When run this code whe have an IndexOutOfBoundsException
> > > >
> > > > "Exception in thread "main" java.lang.IndexOutOfBoundsException :
> > Index:
> > > > 1,
> > > > Size: 1
> > > > at java.util.ArrayList.RangeCheck(Unknown Source)
> > > > at java.util.ArrayList.get(Unknown Source)
> > > > at
> > > >
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > (Input2InputTransformer.java :179)
> > > > at
> > > >
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > (Input2InputTransformer.java:1)
> > > > at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> > > > MediatorImpl.java:83)
> > > > at
> > > >
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform
> > > (
> > > > DataBindingInteceptor.java:189)
> > > > at
> > > >
> org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> > > > (DataBindingInteceptor.java:86)
> > > > at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
> > > > AbstractInvocationHandler.java:91)
> > > > at
> > > >
> > org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke
> > > (
> > > > JDKInvocationHandler.java:150)"
> > > >
> > > > Not to be that I must work with OMElement in my java interface.
> > > >
> > > >
> > > > --
> > > > Paulo Henrique Trecenti
> > > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> > >
> > >
> >
> >
> > --
> > Paulo Henrique Trecenti
> >
>
>
>
> --
> Luciano Resende
> http://people.apache.org/~lresende
>
--
Paulo Henrique Trecenti
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Paulo Henrique Trecenti <pt...@gmail.com>.
And I'm hating OMElement :)
2007/5/4, Luciano Resende <lu...@gmail.com>:
>
> Thanks Paulo, please create a Jira and provide a patch when you have
> something working, and Raymond or I could review and apply your patch.
>
> On 5/2/07, Paulo Henrique Trecenti <pt...@gmail.com> wrote:
> >
> > Ok I can work in this task, because I need this.
> >
> > Currently I am making one sample where I would like to donate for the
> > project sca tuscany, the Luciano Resende is helping me very in this.
> >
> > Thanks.
> >
> > 2007/5/2, Raymond Feng <en...@gmail.com>:
> > >
> > > Hi,
> > >
> > > Thank you for reporting this. Actually, the problem is not in the
> > > Input2InputTransformer. It's related to how we map a java interface to
> a
> > > WSDL portType.
> > >
> > > For a wrapper style (please see WS-JAX spec for the definition) WSDL
> > > operation with the following input wrapper element, we don't support
> it
> > > yet
> > > if the child element such as "resourcesID" with maxOccurs>1.
> > >
> > > <xs:complexType name="editReservation">
> > > <xs:sequence>
> > > <xs:element name="timeSlotID" type="xs:int"/>
> > > <xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
> > > <xs:element name="purpose" type="xs:string" minOccurs="0"/>
> > > <xs:element name="resourcesID" type="xs:int" maxOccurs="unbounded"
> > > minOccurs="0"/>
> > > </xs:sequence>
> > > </xs:complexType>
> > >
> > > In line 382 of
> > > org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java,
> > there
> > > is
> > > a "TODO" :-).
> > >
> > > Thanks,
> > > Raymond
> > >
> > > ----- Original Message -----
> > > From: "Paulo Henrique Trecenti" <pt...@gmail.com>
> > > To: <tu...@ws.apache.org>
> > > Sent: Wednesday, May 02, 2007 7:42 AM
> > > Subject: Throwable Input2InputTransformer.java (179)
> > > IndexOutOfBoundsException
> > >
> > >
> > > > Hi,
> > > >
> > > > I found a small bug in Input2InputTransformer.java (179)
> > > >
> > > > "Object[] newArgs = new Object[source.length];
> > > > for (int i = 0; i < source.length; i++) {
> > > > Object child = mediator.mediate(source[i],
> > > > sourceType.getLogical().get(i), targetType.getLogical().get(i),
> > > > context.getMetadata());
> > > > newArgs[i] = child;
> > > > }"
> > > >
> > > > When try parse a java to wsdl
> > > >
> > > > My java interface method is "public TimeSlot editReservation(int
> > > > timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
> > > >
> > > > I have 4 input params
> > > >
> > > > and my wsdl have 1 element with an type having 4 paramenters
> > > >
> > > > When run this code whe have an IndexOutOfBoundsException
> > > >
> > > > "Exception in thread "main" java.lang.IndexOutOfBoundsException :
> > Index:
> > > > 1,
> > > > Size: 1
> > > > at java.util.ArrayList.RangeCheck(Unknown Source)
> > > > at java.util.ArrayList.get(Unknown Source)
> > > > at
> > > >
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > (Input2InputTransformer.java :179)
> > > > at
> > > >
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > > (Input2InputTransformer.java:1)
> > > > at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> > > > MediatorImpl.java:83)
> > > > at
> > > >
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform
> > > (
> > > > DataBindingInteceptor.java:189)
> > > > at
> > > >
> org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> > > > (DataBindingInteceptor.java:86)
> > > > at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
> > > > AbstractInvocationHandler.java:91)
> > > > at
> > > >
> > org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke
> > > (
> > > > JDKInvocationHandler.java:150)"
> > > >
> > > > Not to be that I must work with OMElement in my java interface.
> > > >
> > > >
> > > > --
> > > > Paulo Henrique Trecenti
> > > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> > >
> > >
> >
> >
> > --
> > Paulo Henrique Trecenti
> >
>
>
>
> --
> Luciano Resende
> http://people.apache.org/~lresende
>
--
Paulo Henrique Trecenti
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Luciano Resende <lu...@gmail.com>.
Thanks Paulo, please create a Jira and provide a patch when you have
something working, and Raymond or I could review and apply your patch.
On 5/2/07, Paulo Henrique Trecenti <pt...@gmail.com> wrote:
>
> Ok I can work in this task, because I need this.
>
> Currently I am making one sample where I would like to donate for the
> project sca tuscany, the Luciano Resende is helping me very in this.
>
> Thanks.
>
> 2007/5/2, Raymond Feng <en...@gmail.com>:
> >
> > Hi,
> >
> > Thank you for reporting this. Actually, the problem is not in the
> > Input2InputTransformer. It's related to how we map a java interface to a
> > WSDL portType.
> >
> > For a wrapper style (please see WS-JAX spec for the definition) WSDL
> > operation with the following input wrapper element, we don't support it
> > yet
> > if the child element such as "resourcesID" with maxOccurs>1.
> >
> > <xs:complexType name="editReservation">
> > <xs:sequence>
> > <xs:element name="timeSlotID" type="xs:int"/>
> > <xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
> > <xs:element name="purpose" type="xs:string" minOccurs="0"/>
> > <xs:element name="resourcesID" type="xs:int" maxOccurs="unbounded"
> > minOccurs="0"/>
> > </xs:sequence>
> > </xs:complexType>
> >
> > In line 382 of
> > org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java,
> there
> > is
> > a "TODO" :-).
> >
> > Thanks,
> > Raymond
> >
> > ----- Original Message -----
> > From: "Paulo Henrique Trecenti" <pt...@gmail.com>
> > To: <tu...@ws.apache.org>
> > Sent: Wednesday, May 02, 2007 7:42 AM
> > Subject: Throwable Input2InputTransformer.java (179)
> > IndexOutOfBoundsException
> >
> >
> > > Hi,
> > >
> > > I found a small bug in Input2InputTransformer.java (179)
> > >
> > > "Object[] newArgs = new Object[source.length];
> > > for (int i = 0; i < source.length; i++) {
> > > Object child = mediator.mediate(source[i],
> > > sourceType.getLogical().get(i), targetType.getLogical().get(i),
> > > context.getMetadata());
> > > newArgs[i] = child;
> > > }"
> > >
> > > When try parse a java to wsdl
> > >
> > > My java interface method is "public TimeSlot editReservation(int
> > > timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
> > >
> > > I have 4 input params
> > >
> > > and my wsdl have 1 element with an type having 4 paramenters
> > >
> > > When run this code whe have an IndexOutOfBoundsException
> > >
> > > "Exception in thread "main" java.lang.IndexOutOfBoundsException :
> Index:
> > > 1,
> > > Size: 1
> > > at java.util.ArrayList.RangeCheck(Unknown Source)
> > > at java.util.ArrayList.get(Unknown Source)
> > > at
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > (Input2InputTransformer.java :179)
> > > at
> > >
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > > (Input2InputTransformer.java:1)
> > > at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> > > MediatorImpl.java:83)
> > > at
> > >
> org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform
> > (
> > > DataBindingInteceptor.java:189)
> > > at
> > > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> > > (DataBindingInteceptor.java:86)
> > > at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
> > > AbstractInvocationHandler.java:91)
> > > at
> > >
> org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke
> > (
> > > JDKInvocationHandler.java:150)"
> > >
> > > Not to be that I must work with OMElement in my java interface.
> > >
> > >
> > > --
> > > Paulo Henrique Trecenti
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> >
> >
>
>
> --
> Paulo Henrique Trecenti
>
--
Luciano Resende
http://people.apache.org/~lresende
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Paulo Henrique Trecenti <pt...@gmail.com>.
Ok I can work in this task, because I need this.
Currently I am making one sample where I would like to donate for the
project sca tuscany, the Luciano Resende is helping me very in this.
Thanks.
2007/5/2, Raymond Feng <en...@gmail.com>:
>
> Hi,
>
> Thank you for reporting this. Actually, the problem is not in the
> Input2InputTransformer. It's related to how we map a java interface to a
> WSDL portType.
>
> For a wrapper style (please see WS-JAX spec for the definition) WSDL
> operation with the following input wrapper element, we don't support it
> yet
> if the child element such as "resourcesID" with maxOccurs>1.
>
> <xs:complexType name="editReservation">
> <xs:sequence>
> <xs:element name="timeSlotID" type="xs:int"/>
> <xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
> <xs:element name="purpose" type="xs:string" minOccurs="0"/>
> <xs:element name="resourcesID" type="xs:int" maxOccurs="unbounded"
> minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
>
> In line 382 of
> org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java, there
> is
> a "TODO" :-).
>
> Thanks,
> Raymond
>
> ----- Original Message -----
> From: "Paulo Henrique Trecenti" <pt...@gmail.com>
> To: <tu...@ws.apache.org>
> Sent: Wednesday, May 02, 2007 7:42 AM
> Subject: Throwable Input2InputTransformer.java (179)
> IndexOutOfBoundsException
>
>
> > Hi,
> >
> > I found a small bug in Input2InputTransformer.java (179)
> >
> > "Object[] newArgs = new Object[source.length];
> > for (int i = 0; i < source.length; i++) {
> > Object child = mediator.mediate(source[i],
> > sourceType.getLogical().get(i), targetType.getLogical().get(i),
> > context.getMetadata());
> > newArgs[i] = child;
> > }"
> >
> > When try parse a java to wsdl
> >
> > My java interface method is "public TimeSlot editReservation(int
> > timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
> >
> > I have 4 input params
> >
> > and my wsdl have 1 element with an type having 4 paramenters
> >
> > When run this code whe have an IndexOutOfBoundsException
> >
> > "Exception in thread "main" java.lang.IndexOutOfBoundsException : Index:
> > 1,
> > Size: 1
> > at java.util.ArrayList.RangeCheck(Unknown Source)
> > at java.util.ArrayList.get(Unknown Source)
> > at
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > (Input2InputTransformer.java :179)
> > at
> >
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> > (Input2InputTransformer.java:1)
> > at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> > MediatorImpl.java:83)
> > at
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform
> (
> > DataBindingInteceptor.java:189)
> > at
> > org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> > (DataBindingInteceptor.java:86)
> > at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
> > AbstractInvocationHandler.java:91)
> > at
> > org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke
> (
> > JDKInvocationHandler.java:150)"
> >
> > Not to be that I must work with OMElement in my java interface.
> >
> >
> > --
> > Paulo Henrique Trecenti
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>
--
Paulo Henrique Trecenti
Re: Throwable Input2InputTransformer.java (179) IndexOutOfBoundsException
Posted by Raymond Feng <en...@gmail.com>.
Hi,
Thank you for reporting this. Actually, the problem is not in the
Input2InputTransformer. It's related to how we map a java interface to a
WSDL portType.
For a wrapper style (please see WS-JAX spec for the definition) WSDL
operation with the following input wrapper element, we don't support it yet
if the child element such as "resourcesID" with maxOccurs>1.
<xs:complexType name="editReservation">
<xs:sequence>
<xs:element name="timeSlotID" type="xs:int"/>
<xs:element name="requestedBy" type="xs:string" minOccurs="0"/>
<xs:element name="purpose" type="xs:string" minOccurs="0"/>
<xs:element name="resourcesID" type="xs:int" maxOccurs="unbounded"
minOccurs="0"/>
</xs:sequence>
</xs:complexType>
In line 382 of
org.apache.tuscany.interfacedef.wsdl.introspect.WSDLOperation.java, there is
a "TODO" :-).
Thanks,
Raymond
----- Original Message -----
From: "Paulo Henrique Trecenti" <pt...@gmail.com>
To: <tu...@ws.apache.org>
Sent: Wednesday, May 02, 2007 7:42 AM
Subject: Throwable Input2InputTransformer.java (179)
IndexOutOfBoundsException
> Hi,
>
> I found a small bug in Input2InputTransformer.java (179)
>
> "Object[] newArgs = new Object[source.length];
> for (int i = 0; i < source.length; i++) {
> Object child = mediator.mediate(source[i],
> sourceType.getLogical().get(i), targetType.getLogical().get(i),
> context.getMetadata());
> newArgs[i] = child;
> }"
>
> When try parse a java to wsdl
>
> My java interface method is "public TimeSlot editReservation(int
> timeSlotID, String requestedBy, String purpose, int[] resourcesID);"
>
> I have 4 input params
>
> and my wsdl have 1 element with an type having 4 paramenters
>
> When run this code whe have an IndexOutOfBoundsException
>
> "Exception in thread "main" java.lang.IndexOutOfBoundsException : Index:
> 1,
> Size: 1
> at java.util.ArrayList.RangeCheck(Unknown Source)
> at java.util.ArrayList.get(Unknown Source)
> at
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> (Input2InputTransformer.java :179)
> at
> org.apache.tuscany.core.databinding.transformers.Input2InputTransformer.transform
> (Input2InputTransformer.java:1)
> at org.apache.tuscany.databinding.impl.MediatorImpl.mediate(
> MediatorImpl.java:83)
> at
> org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.transform(
> DataBindingInteceptor.java:189)
> at
> org.apache.tuscany.core.databinding.wire.DataBindingInteceptor.invoke
> (DataBindingInteceptor.java:86)
> at org.apache.tuscany.spi.wire.AbstractInvocationHandler.invoke(
> AbstractInvocationHandler.java:91)
> at
> org.apache.tuscany.implementation.java.proxy.JDKInvocationHandler.invoke(
> JDKInvocationHandler.java:150)"
>
> Not to be that I must work with OMElement in my java interface.
>
>
> --
> Paulo Henrique Trecenti
>
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org