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

RE: xml-sax issue



></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
-----------------------------------------------------------------------