[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: xml-sax issue
I keep getting a stringlen of -1, that seems to be part of the issue I think.
> 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
> -----------------------------------------------------------------------
>
>
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------