[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: throwing SAX Exceptions from SAX Filters

  • From: Ajay K sanghi <sanghi@g...>
  • To: xml-dev@l...
  • Date: Thu, 12 Jul 2001 06:32:42 +0530

saxparseexeption

I normally prefer throwing my own exception (derrived from my base
exception):

try
{
	SAXFunction();
}
catch(SAXParseException& e)
{
	ostringstream ost;
	ost <<  "caught SAXParseExeption, info [locator info and any other info
embedded in the square bracket]" << e.ExtractAllInfo() << "Rethrowing...";
	throw MYException(MY_ERROR_CODE, ost.str(), __FILE__, __LINE__);
}

Reason for throwing my own exception is:
1. in my (higher) code, I have to only catch my base exception along with
catch(...) and if I catch(...) then I know I have either not caught
something below that I should have or It's a case of bad pointer.
2. Also, If I change my base level code (replace Xerces with something
else), then my user (or my higher level code) do not have to change their
exception handling.

However, if what I am coding is an extension of Xerces, and another user
would be using it then I would rather throw SAXParseExeption, otherwise user
will have to deal with a new exception.

Thanks,

Ajay



-----Original Message-----
From: xml-dev-errors@l...
[mailto:xml-dev-errors@l...]On Behalf Of Michael Brennan
Sent: Thursday, July 12, 2001 2:50 AM
To: 'Simon St.Laurent'; xml-dev@l...
Subject: RE: throwing SAX Exceptions from SAX Filters


If this would only be used within the context of a SAX filter and nowhere
else, I'd say just throw a SAXException. That's what I typically do.
SAXExceptions can conveniently carry another exception, so the application
can determine what the real original exception was. I tend to leverage that
pretty heavily. In fact, I always through a SAXParseException so that the
application can get the Locator info and determine where in the XML source
the error occurred. That's pretty useful for debugging.

> -----Original Message-----
> From: Simon St.Laurent [mailto:simonstl@s...]
> Sent: Wednesday, July 11, 2001 1:39 PM
> To: xml-dev@l...
> Subject: throwing SAX Exceptions from SAX Filters
>
>
> I'm presently writing a SAX Filter which supports the Regular
> Fragmentations work I'm doing.  As part of an effort to reduce the
> project's explicit reliance on the Xerces parser's regex routines (for
> matching) and the regexp's split() functionality, I'm building an
> interface which allows developers to create tiny wrappers around
> whatever regex package they find most appropriate.
>
> Part of that involves using the newInstance() method to create classes
> based on system properties or command line output, and I need
> to handle
> and throw exception.  Although this code is part of a SAX filter, the
> work it is doing isn't explicitly SAX-related.
>
> Should I be throwing SAXExceptions?  Or concocting something new?

------------------------------------------------------------------
The xml-dev list is sponsored by XML.org, an initiative of OASIS
<http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To unsubscribe from this elist send a message with the single word
"unsubscribe" in the body to: xml-dev-request@l...


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.