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

RE: xml-sax issue



That's because I copied it from the debug session Mike, I even added a
%trim just to make sure. still only gives me start and end doc nothing in
between


>></MMMProcess>      '
>
> At the end of the string - you have 6 extra characters.
>
> Reading about XML-SAX came across this that creates a kind of debug for
> what is happening. Might be helpful.
>
> http://www.mysamplecode.com/2011/06/rpgle-xml-parser-xml-sax-and-xml-into_4197.html
>
>
> -----Original Message-----
> From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of RPG List
> Sent: Friday, September 4, 2015 5:34 PM
> To: HTTPAPI and FTPAPI Projects
> Subject: RE: xml-sax issue
>
> Extra characters?
>
>
>
>> Not meaning to take this thread off topic but Expat would handle this
>> simple XML very straight forward.
>>
>> If you want to stay with native support, Jon Paris just wrote a nice
>> series of articles on XML-INTO that are pretty good places to
>> understand how XML will map to a data structure. First article was
>> August 4:
>> http://www.itjungle.com/fhg/fhgindex.html
>>
>> Final thought back on topic, your XML has a few extra characters on
>> the back side. Perhaps they are messing with the parser in some way?
>> Are you using a varchar for the XML?
>>
>> -----Original Message-----
>> From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
>> [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of RPG List
>> Sent: Friday, September 4, 2015 5:01 PM
>> To: HTTPAPI and FTPAPI Projects
>> Subject: Re: xml-sax issue
>>
>> It does not show any errors, in the xml.  I took the string and stuck
>> in it in a document added the .xml extension and opened it.
>>
>> I have no clue why I can't see each ELEMENT name as it loops through
>> the document.  It gives me START_DOCUMENT on the first pass and then
>> END_DOCUMENT on the second pass and that's all.
>>
>>
>>> I understand what your saying, I'll double check it that way... I
>>> misread what you said.
>>>
>>> Dutch
>>>
>>>
>>>> Alan,
>>>> Its coming in as a string, its not stored on the system.
>>>>
>>>> Its coming from a web service, its a return response.
>>>>
>>>>
>>>>
>>>>>    Take the document, make sure it has a .xml on the end and double
>>>>> click
>>>>>    in Windows and IE will open as a XML document. If there is
>>>>> anything
>>>>>    wrong with the document, it will throw an error telling you were
>>>>> the
>>>>>    problem is.
>>>>>
>>>>>    On Fri, Sep 4, 2015 at 2:34 PM, RPG List <[1]rpglist@xxxxxxxxxxx>
>>>>>    wrote:
>>>>>
>>>>>      Scott,
>>>>>      I'm not sure we don't have another problem.  Here's why when
>>>>> I step
>>>>>      through the xmlhandler, I get the start_document on the first
>>>>> read,
>>>>>      and
>>>>>      then I get end_document on the second read.  That's it.  Its
>>>>>      almost as
>>>>>      though its never seeing the data further.  I ran a test using
>>>>> the
>>>>>      following:
>>>>>      XML = '<xmlTest>+
>>>>>      Â  Â  Â  Â  Â  Â  Â  Â <name type="author">AS400 Sample
>>>>> Code/name>+
>>>>>      Â  Â  Â  Â  Â  Â  Â  Â </xmlTest>';
>>>>>      that worked.
>>>>>      Here is what the xml document looks like coming in:
>>>>>      '<MMMProcess><Results><Claim>8104550</Claim><Amount>1995.83</'
>>>>>      'Amount><Code>7320</Code><Xrg>53</Xrg><MEANLOS2>2</MEAN'
>>>>>      'LOS2><Error_Code>0</Error_Code></Results></MMMProcess>Â  Â  Â
>>>>> '
>>>>>      I just can't find what's wrong with the xml..
>>>>>      > Dutch,
>>>>>      >
>>>>>      > The XML processing instructions ("header" as you call it) are
>>>>>      optional.
>>>>>      > They are not required.
>>>>>      >
>>>>>      > The problem is what I said in my first reply to you.Â
>>>>> Please read
>>>>>      the
>>>>>      > article I linked to so you can learn how XML-SAX works.
>>>>>      >
>>>>>      > -SK
>>>>>      >
>>>>>      >
>>>>>      > On 9/4/2015 3:18 PM, RPG List wrote:
>>>>>      >> one additional issue I saw this morning Scott and maybe
>>>>> this is
>>>>>      the
>>>>>      >> problem, the incoming XML does not have what I would call a
>>>>>      standard
>>>>>      >> header:
>>>>>      >>
>>>>>      >> IE: it does not have a version or description that I see in
>>>>> most
>>>>>      xml
>>>>>      >> documents, maybe that's needed or maybe not?
>>>>>      >>
>>>>>      >>
>>>>>      >>> Dutch,
>>>>>      >>>
>>>>>      >>> This looks an awful lot like a program that I wrote a long
>>>>> time
>>>>>      ago to
>>>>>      >>> print the XML events.  I would not recommend using this to
>>>>>      actually
>>>>>      >>> parse a document -- to parse with XML-SAX you're going to
>>>>> need
>>>>>      to
>>>>>      >>> create
>>>>>      >>> a stack of XML elements (implemented in RPG as an array,
>>>>> most
>>>>>      likely)
>>>>>      >>> and keep track of the current XML element you're working on,
>>>>>      etc.
>>>>>      >>> There
>>>>>      >>> was another program included in that same article called
>>>>>      "CustXml" that
>>>>>      >>> demonstrates this -- that program would be a better starting
>>>>>      point.
>>>>>      >>>
>>>>>      [2]http://iprodeveloper.com/print/rpg-programming/rpgs-xml-sax-opcod
>>>>>      e
>>>>>      >>>
>>>>>      >>> (use the "print" option to format the code better, Penton
>>>>> media
>>>>>      has
>>>>>      >>> screwed up the code figures in their article archive)
>>>>>      >>>
>>>>>      >>> Based on what you've shown us, the only thing you'd get in
>>>>> your
>>>>>      string
>>>>>      >>> is the name of the XML tag you're parsing.  (Since that's
>>>>>      what's
>>>>>      >>> pointed
>>>>>      >>> to by "string" during the XML_START_ELEMENT event.)
>>>>>      >>>
>>>>>      >>> You say you're getting nothing at all...?  Since you're
>>>>> getting
>>>>>      it from
>>>>>      >>> the 'value' field, you'd need to show us the definition
>>>>> and/or
>>>>>      code
>>>>>      >>> that
>>>>>      >>> populates 'value' for us to see how that works.  Funny
>>>>> that you
>>>>>      omitted
>>>>>      >>> that part of the code considering that your question is
>>>>> about
>>>>>      it?
>>>>>      >>>
>>>>>      >>> Also, is this part of a program that uses HTTPAPI or
>>>>> FTPAPI?Â
>>>>>      If so, I
>>>>>      >>> guess we can discuss it here...   if not, however, this
>>>>> really
>>>>>      doesn't
>>>>>      >>> belong on this mailing list.
>>>>>      >>>
>>>>>      >>> -SK
>>>>>      >>>
>>>>>      >>>
>>>>>      >>> On 9/3/2015 9:17 PM, RPG List wrote:
>>>>>      >>>> I am attempting to parse out the data I'm getting from a
>>>>> web
>>>>>      service
>>>>>      >>>> and
>>>>>      >>>> I'm having a little trouble.
>>>>>      >>>>
>>>>>      >>>> I'm using the following as my to the handler:
>>>>>      >>>>
>>>>>      >>>>Â  Â  Â  xml = %trim(%subSt(GetResponse:3:5000));
>>>>>      >>>>Â  Â  Â  xml-sax %handler(xmlHandler: ignoreMe)
>>>>>      >>>>Â  Â  Â  Â  Â %XML(xml: 'doc=string');
>>>>>      >>>>
>>>>>      >>>> GetResponse has the full xml string I'm expecting.
>>>>>      >>>>
>>>>>      >>>> my xmlhandler is defined as follows:
>>>>>      >>>>
>>>>>      >>>> P xmlHandler      b
>>>>>      >>>> D                 pi            10i 0
>>>>>      >>>> D ignore                         1a
>>>>>      >>>> D event                         10i 0 value
>>>>>      >>>> D   string                        *   value
>>>>>      >>>> D   stringLen                   20i 0 value
>>>>>      >>>> D   exceptionId                 10i 0 value
>>>>>      >>>>
>>>>>      >>>> I then have the following code in the procedure:
>>>>>      >>>>
>>>>>      >>>> OutputXML.name = XML_Event_Name(event);
>>>>>      >>>> OutputXML.data = *blanks;
>>>>>      >>>>
>>>>>      >>>> select;
>>>>>      >>>> when string=*null or stringlen<1;
>>>>>      >>>>Â  Â  Â  // no string given...
>>>>>      >>>> when stringlen>%size(value);
>>>>>      >>>>Â  Â  Â  OutputXML.data = '** string length invalid';
>>>>>      >>>> other;
>>>>>      >>>>Â  Â  Â  OutputXML.data = %subst(value:1:stringlen);
>>>>>      >>>> endsl;
>>>>>      >>>>
>>>>>      >>>> // Change Current XML group if applicable
>>>>>      >>>> Select;
>>>>>      >>>>Â  Â  Â  When OutputXML.name = 'XML_START_ELEMENT';
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>> The problem is outputXML.data never has a value that I can
>>>>>      see.  Am I
>>>>>      >>>> doing something wrong or am I missing a step?
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >>>>
>>>>>      >
>>>>>      >
>>>>>      --------------------------------------------------------------------
>>>>>      ---
>>>>>      > This is the FTPAPI mailing list.  To unsubscribe, please go
>>>>> to:
>>>>>      > [3]http://www.scottklement.com/mailman/listinfo/ftpapi
>>>>>      >
>>>>>      --------------------------------------------------------------------
>>>>>      ---
>>>>>      >
>>>>>      --------------------------------------------------------------------
>>>>>      ---
>>>>>      This is the FTPAPI mailing list.  To unsubscribe, please go to:
>>>>>      [4]http://www.scottklement.com/mailman/listinfo/ftpapi
>>>>>      --------------------------------------------------------------------
>>>>>      ---
>>>>>
>>>>> References
>>>>>
>>>>>    1. mailto:rpglist@xxxxxxxxxxx
>>>>>    2.
>>>>> http://iprodeveloper.com/print/rpg-programming/rpgs-xml-sax-opcode
>>>>>    3. http://www.scottklement.com/mailman/listinfo/ftpapi
>>>>>    4. http://www.scottklement.com/mailman/listinfo/ftpapi
>>>>> -------------------------------------------------------------------
>>>>> -
>>>>> --- This is the FTPAPI mailing list.  To unsubscribe, please go to:
>>>>> http://www.scottklement.com/mailman/listinfo/ftpapi
>>>>> -------------------------------------------------------------------
>>>>> -
>>>>> ---
>>>>>
>>>>
>>>>
>>>> --------------------------------------------------------------------
>>>> -
>>>> -- This is the FTPAPI mailing list.  To unsubscribe, please go to:
>>>> http://www.scottklement.com/mailman/listinfo/ftpapi
>>>> --------------------------------------------------------------------
>>>> -
>>>> --
>>>>
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> - This is the FTPAPI mailing list.  To unsubscribe, please go to:
>>> http://www.scottklement.com/mailman/listinfo/ftpapi
>>> ---------------------------------------------------------------------
>>> -
>>> -
>>>
>>>
>>
>>
>> ----------------------------------------------------------------------
>> - This is the FTPAPI mailing list.  To unsubscribe, please go to:
>> http://www.scottklement.com/mailman/listinfo/ftpapi
>> ----------------------------------------------------------------------
>> -
>> ----------------------------------------------------------------------
>> - This is the FTPAPI mailing list.  To unsubscribe, please go to:
>> http://www.scottklement.com/mailman/listinfo/ftpapi
>> ----------------------------------------------------------------------
>> -
>>
>>
>
>
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
>
>


-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------