You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Dorner Thomas <th...@edmb.debis.com> on 2004/07/15 11:26:01 UTC

Is this a bug - whats wrong?

I have the following problem,
 
I send 2 parameters in the in the Method "invoke" one is a String and the
other ist a Hashmap.
 
When i send  a key and only one String as a value there is no problem!
But when I use a Array as value for the Hashmap i get a 
 
 <faultstring>org.xml.sax.SAXException: SimpleDeserializer encountered a
child element, which is NOT expected, in something it was trying to
deserialize.</faultstring>
 
So when I look at my wsdl (generated with axis 1.2 beta_2) I see no 
 
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <schema elementFormDefault="qualified"
targetNamespace="http://xml.apache.org/xml-soap"
xmlns="http://www.w3.org/2001/XMLSchema">
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <complexType name="mapItem">
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <sequence>
  <element name="key" nillable="true" type="xsd:anyType" /> 
  <element name="value" nillable="true" type="xsd:anyType" /> 
  </sequence>
  </complexType>
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <complexType name="Map">
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <sequence>
  <element maxOccurs="unbounded" minOccurs="0" name="item"
type="apachesoap:mapItem" /> 
  </sequence>
  </complexType>
  </schema>
  </wsdl:types>
 
only the 
 
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <element name="invoke">
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <complexType>
 
<file:///C:/WebService_Dev/eclipse-SDK-2.1.2-win32/eclipse/workspace/PDMWebC
onnector/JavaSource/com/tsystems/epdm/pdmwebconnector/webService/srm/SRM.wsd
l#> - <sequence>
  <element name="functionName" type="xsd:string" /> 
  <element name="params" type="apachesoap:Map" /> 
  </sequence>
  </complexType>
  </element>
 
The SOAP-Message for the call was generated and looks like this:
 
<soapenv:Envelope xmlns:soapenv="
<http://schemas.xmlsoap.org/soap/envelope/>
http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
<http://www.w3.org/2001/XMLSchema> http://www.w3.org/2001/XMLSchema"
xmlns:xsi="  <http://www.w3.org/2001/XMLSchema-instance>
http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Header>
      <ns1:sessionID soapenv:actor="
<http://schemas.xmlsoap.org/soap/actor/next>
http://schemas.xmlsoap.org/soap/actor/next" soapenv:mustUnderstand="0"
xmlns:ns1=" 1368408239792107348 <http://xml.apache.org/axis/session>
http://xml.apache.org/axis/session">1368408239792107348</ns1:sessionID>
   </soapenv:Header>
   <soapenv:Body>
      <invoke xmlns="service:Smaragd">
         <functionName>isActual</functionName>
         <params>
            <item xmlns:soapenc="
<http://schemas.xmlsoap.org/soap/encoding/>
http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="
<http://xml.apache.org/xml-soap> http://xml.apache.org/xml-soap" xmlns="">
               <key>kem</key>
               <value>
                  <item xsi:type="soapenc:string">test</item>
                  <item xsi:type="soapenc:string">test</item>
               </value>
            </item>
            <item xmlns="">
               <key>versionOBIDs</key>
               <value>
                  <item xsi:type="soapenc:string" xmlns:soapenc=" test
<http://schemas.xmlsoap.org/soap/encoding/>
http://schemas.xmlsoap.org/soap/encoding/">test</item>
                  <item xsi:type="soapenc:string" xmlns:soapenc=" test
<http://schemas.xmlsoap.org/soap/encoding/>
http://schemas.xmlsoap.org/soap/encoding/">test</item>
               </value>
            </item>
         </params>
      </invoke>
   </soapenv:Body></soapenv:Envelope>

 
normaly there should be no problem to send a array in a Hashmap!???
 
Can pls someone let me know what I am doing wrong???
 
Thanks Tomi