[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Soap message with xml as string


   first of all.....Scott..thanks for nice work on httpapi!

   Httpapi with expat is working great!

   I'm communicating to a number of webservices and there is a problem
   with one of them.

   Its a webservice with 3 arguments where one is the dataxml which is
   type string.

   The dataxml tag is holding more xml data.

   The question is how to build the Soap variable in http_url_post_xml?

   Here is the webservice description:

POST /NaturKoordWebService/NPService.asmx HTTP/1.1
Host: naturskadekoordinering.no
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://naturskadekoordinering.no/NaturKoordWebService/SendMelding

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"; xmlns:soap="http://schemas.xmlsoap.org/soap/
    <SendMeldinger xmlns="https://naturskadekoordinering.no/NaturKoordWebServic

   Here is some of the rpg code:

   SOAP =
   '<?xml version="1.0" encoding="utf-8"?>'
   +'<soap:Envelope xmlns:xsi="[1]http://www.w3.org/'
   +' xmlns:xsd="[2]http://www.w3.org/2001/XMLSchema";'
   +' xmlns:soap="[3]http://schemas.xmlsoap.org/soap/envelope/";>'







             : %paddr(Add_SOAPACTION) );

   HTTP_setCCSIDs(1208: 0);  // CCSID 1208 = UTF-8

   rc = http_url_post_xml(
                     : %addr(SOAP) + 2
                     : %len(SOAP)
                     : *NULL
                     : %paddr(Incoming)
                     : *NULL
                     : HTTP_TIMEOUT
                     : HTTP_USERAGENT
                     : 'text/xml');

   The problem seem to be that I'm sending real xml in the <dataxml> tag.

   I've tried to convert all the '<' and '>'  to &lt; &gt; in the
   <dataxml> tag but all my tries has resulted in expat message"no
   elements found".

   When I remove the xml data in  <dataxml> tag (empty dataxml) I receive
   a soap response from the web service (just says that there was no data
   in the dataxml tag).  Anyone knows how to build string xml within xml?

   Another question (just quorious):

   Why the +2 in    %addr(SOAP) + 2  ?

   And is is possible to use this (add_soapaction) 2 times (or more) in
   the same program/rc?

    http_xproc( HTTP_POINT_ADDL_HEADER
             : %paddr(Add_SOAPACTION) );

   Best regards



   1. http://www.w3.org/'
   2. http://www.w3.org/2001/XMLSchema";'
   3. http://schemas.xmlsoap.org/soap/envelope/";>'
   4. https://naturskadekoordinering.no/NaturKoordWebService/";>'
This is the FTPAPI mailing list.  To unsubscribe, please go to: