Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > XML > SAX Parsing - Weird results when parsing content between tags.

Reply
Thread Tools

SAX Parsing - Weird results when parsing content between tags.

 
 
Naren
Guest
Posts: n/a
 
      05-11-2004
I have an XML like the one below.

I am using SAX parsing and I need to get the information between the
tags of the Email element. First i try to access the content and print
it out and it gives me weird results.

XML:
/www.xmlspy.com) by AB(Co) --><!--Sample XML file generated by XML Spy
v4.0.1 U (http://www.xmlspy.com)-->
<RoomResRQ xmlns:commonelements="http://*.com/schema/CommonElements"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
Action="CreateNew">

<RoomResSpecs>
<RoomResSpec>
<RoomResParty>
<PartyMixInfo>
<Email>
http://www.velocityreviews.com/forums/(E-Mail Removed)
</Email>
</PartyMixInfo>
</RoomResParty>
</RoomResSpec>
</RoomResSpecs>
</RoomResRQ>


The RESULT of running my parser on this is:

/www.xmlspy.com) by AB(Co) --><!--Sample XML file generated by XML Spy
v4.0.1 U (http://www.xmlspy.com)-->
<RoomResRQ xmlns:commonelements="http://*.com/schema/CommonElements"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
Action="CreateNew">

<RoomResSpecs>
<RoomResSpec>
<RoomResParty>
<PartyMixInfo>
<Email>
(E-Mail Removed)



I expect only the email address to be output, but everything else
before the address is also printed.
I appreciate if anyone can help.


In startelement(), I have the following condition for email.
if (localName.equals(Email)
{
readyForContent = true;
}


In the characters() method, I read the content only when the
readyForContent flag is true. In the endElement() method, I first set
the readyForContent flag to true.
So, The content is read only when the flag is true and it happens only
when the startElement is Email.

public void characters(char[] ch, int start, int length)
throws SAXException {

if (readyForContent)
{
emailBuf = new StringBuffer();
emailBuf.append(ch, start, length);
System.out.println(emailBuf);

}
}


public void endElement(String namespaceURI, String localName, String
qName)
throws SAXException {
readyForContent = false;
//clean the stack
if (!tagStack.isEmpty()){
tagStack.pop();
}
}
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
error: Only Content controls are allowed directly in a content page that contains Content controls. hazz ASP .Net 6 06-09-2010 01:54 PM
programming: SAX and get content between open and close tag? Rui Maciel XML 12 07-07-2006 03:36 PM
Different results parsing a XML file with XML::Simple (XML::Sax vs. XML::Parser) Erik Wasser Perl Misc 5 03-05-2006 10:09 PM
Wierd Results when reading content between tags Naren Java 0 05-11-2004 02:04 PM



Advertisments