Hi everybody,
I'm not the first who have this problem, and.. for now I never found any
solution to solve it.. Maybe here you will help me or just tell me that what
I want to do is impossible ... ?
I want to make a request which would look like that :
<soapenv:Body>
<com:Search>
<SearchParameters>
<Fragment>
<ConditionClause>
<Comparator> </Comparator>
<FieldName> </FieldName>
<Values> </Values>
</ConditionClause>
</Fragment>
</SearchParameters>
</com:Search>
</soapenv:Body>
with the elements of the SearchParameters described like that :
<element name="ConditionClause" type="tns:SearchConditionClauseType"
maxOccurs="1" minOccurs="0" nillable="true"></element>
<complexType name="SearchConditionClauseType">
<sequence>
<element name="Comparator" type="string" nillable="true">
</element>
<element name="FieldName" type="string" nillable="true">
</element>
<element name="Values" type="anyType" maxOccurs="unbounded"
nillable="true"> </element>
</sequence>
</complexType>
In fact, I want to make a genereic Search function, where you put the name
of a field and the value it take in order to make the request, like :
A user as 3 fiels : 1 string : name, 1 boolean : IsActive (or not) and
1 Informations .. let's say complex type , which contain lot of
informations.
I would like to make a request to search a user by name, IsActive or by
Informations ...
So, the field name will be everytime a string, which will be the name of the
User field (name, IsActive or Informations)
But, the Values parameter will be a different type if I want to search a
user by name, or search the Active Users... or Search by Informations......
et caetera.
In this way, I've put a type="anyType" for the element "Values" ...
But this is not working. when I try my request, the answer from axis is :
org.apache.axis2.databinding.ADBException: Any type element type has not
been given
is there a problem in my way of building the request ?
I use SoapUi for my tests, and I sent a request like :
<soapenv:Body>
<com:Search>
<SearchParameters>
<Fragment>
<!--Optional:-->
<ConditionClause>
<Comparator>Equal</Comparator>
<FieldName>Name</FieldName>
<!--1 or more repetitions:-->
<Values>Peter Parker</Values>
</ConditionClause>
</Fragment>
</SearchParameters>
</com:Search>
</soapenv:Body>
.. And this is not working... I really don't know how to do to make it work.
any ideas ?