Loading ...
Sorry, an error occurred while loading the content.

AW: Modifying soap:Envelope attributes

Expand Messages
  • Martin Busik
    Hi, ... I had a similiar problem. The XML-Schema definition contained the following attribute: elementFormDefault= qualified this causes some implementations
    Message 1 of 1 , Oct 30, 2009
    • 0 Attachment
      Hi,

      > If the xmlns does not appear in the Envelope tag then we get
      > the following error from the server:
      > org.xml.sax.SAXException: SimpleDeserializer encountered a
      > child element, which is NOT expected, in something it was
      > trying to deserialize.

      I had a similiar problem. The XML-Schema definition contained the following
      attribute:

      elementFormDefault="qualified"

      this causes some implementations to expect the following xml:

      <ns:modEF xmlns:ns="urn:whatever>
      <ns:param1>aaa</ns:param1>
      <ns:param2>bbb</ns:param2>
      </ns:modEF>

      Sending just (the SOAP::Lite-Default):

      <modEF xmlns="urn:whatever">
      <param1>aaa</param1>
      <param2>bbb</param2>
      </modEF>

      causes an error. May be, this is the same in your case.

      To create the "qualified" parameters, just use:

      $NS = "http://server.domain.com/model";

      $proxy->serializer->ns($NS);
      $prefix = $proxy->serializer->find_prefix($NS);

      $obj = SOAP::Data->name("$prefix:modEF" => ...

      Cheers,
      Martin
    Your message has been successfully submitted and would be delivered to recipients shortly.