Hi Colin,

It does not matter if you install a ProblemListener or not.  If you don't,
a default instance is installed which sends output to stderr.

We may keep the ProblemListener mechanism, but change it slightly.  The
issue is that the way it works now is too intrusive.  It's designed to
report the error _before_ Xalan deals with it, which means it must be
propagated throughout the system.  That's a huge pain, and, as you can see,
there are places where it's not happening.  If we keep it, it will probably
be for reporting errors after exceptions have been thrown and caught at the
top-most level.

Dave



                                                                                
                                                               
                      Colin Paul Adams                                          
                                                               
                      <[EMAIL PROTECTED]         To:      
[email protected]                                                    
       
                      mon.co.uk>               cc:      (bcc: David N 
Bertoni/Cambridge/IBM)                                                   
                                               Subject: Re: Capturing output 
(Was: function-available not working)                             
                      03/05/2003 11:07                                          
                                                               
                      PM                                                        
                                                               
                                                                                
                                                               



>>>>> "David" == David N Bertoni/Cambridge/IBM <[EMAIL PROTECTED]>
writes:

    David> Hi Colin,

    David> OK, I just realized what's happening -- this is coming from
    David> an exception and is not going through the ProblemListener
    David> mechanism.  This was reported a while back, but it turned
    David> out there was no easy solution to problem.  This is a
    David> general problem and is why the whole ProblemListener
    David> mechanism needs to be removed or revised.

I repeat, I had not installed a ProblemListener, so it does not
explain (to me, unless there is some kind of ProblemListener installed
by default) why I did not see the error.

    David> So, you probably need to check the error return from
    David> XalanTransformer and look at that in the cases where you
    David> don't get anything from the ProblemListener mechanism.  If
    David> it's non-zero, you can get the last error from
    David> XalanTransformer::getLastError().

This works, but I would prefer to be able to implement
ProblemListener, or some such mechanism.
--
Colin Paul Adams
Preston Lancashire


Reply via email to