webservicequery misinterprets wsdl with Unmarshalling Error: cvc-datatype-valid.1.2.1 for decimal property

Hi,

i have found many solutions in community, but all imply modification of sails or using of text property to store decial number or modify webservice;
The problem is that in the wsdl the request have a parameter defined as:

<xs:element minOccurs="0" name="price" type="xs:decimal"/>

and than for definition www.w3.org/.../ can only accept number in the format :
<pattern value='[0-9]{5}(-[0-9]{4})?'/>

Now when webservicequery is invoked passing the cdt representing the request with price deined as Number (Decimal)

the Webservice respond with the validation error:

Unmarshalling Error: cvc-datatype-valid.1.2.1: "1.234567809E10" non è un valore valido per "decimal".

From point of view of webService the error is coccerc because the format 1.234567809E10 violates the contract of wsdl type="xs:decimal" that not accept scentific Notation;
therefore the problem in in conversion Appian-Number(decimal)<->xs:decimal from cdt to requst; that not respect wsdl contract

I can't modify webService wsdl or cdt becaused;
How i can find a solution to this problem or can you fix the conversion that take place in this situation ?

thanks

  Discussion posts and replies are publicly visible