[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: xml-sax issue
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
-----------------------------------------------------------------------