What you may be seeing is differences in when the different JVMs flush
their output.  Use System.out.flush() (or System.err.flush()) right after
regular and exception output.  An even simpler approach may be to just
trace execution using the debugger. (jdb for the command line run.)

Matt Olsen
Programmer
Ovid Technologies
http://www.ovid.com


                                                                                
                              
                    "Andrea                                                     
                              
                    Foster"              To:     <[EMAIL PROTECTED]>            
                   
                    <[EMAIL PROTECTED]        cc:                               
                                   
                    kom.co.za>           Fax to:                                
                              
                                         Subject:     exception handling and 
DOM parsing                      
                    05/02/01                                                    
                              
                    07:47 AM                                                    
                              
                    Please                                                      
                              
                    respond to                                                  
                              
                    xerces-j-user                                               
                              
                                                                                
                              
                                                                                
                              




Ok, I don't get this. I was under the impression that if I'm executing
three statements like this
x();
y;
z;

then any exceptions thrown internally in x() will be handled _before_ y
is executed. Where x() is a  parse call to a  Xerces validating DOM
parser. And y is a block of statements that is printing the result of a
timing calculation. And z is a block of statements doing pretty printing
of the DOM tree. For the moment all output is going to System.out

Well look at this:

same code. compiled in jbuilder 4. same input data files:

output when run inside jbuilder:

C:\JBUILDER4\JDK1.3\bin\javaw -classpath
"C:\Development\Java\domtest\classes;C:
\JavaStuff\xerces-1_3_1\xerces.jar;C:
\JBUILDER4\JDK1.3\demo\jfc\Java2D\Java2Demo.jar;C:
\JBUILDER4\JDK1.3\jre\lib\i18n.jar;C:\JBUILDER4\JDK1.3\jre\lib\jaws.jar;C:
\JBUILDER4\JDK1.3\jre\lib\rt.jar;C:
\JBUILDER4\JDK1.3\jre\lib\sunrsasign.jar;C:\JBUILDER4\JDK1.3\lib\dt.jar;C:
\JBUILDER4\JDK1.3\lib\tools.jar"
 domtest.domtestmain

[y output]
[x exception handler output]
[z output]


output when run from .bat file using jdk1.3:


C:\Development\Java\domtest\classes>set PATH=c:\jdk1.3\bin
C:\Development\Java\domtest\classes>set
CLASSPATH=;c:\javastuff\xerces-1_3_1\xerces.jar;c:
\development\java\domtest\classes
C:\Development\Java\domtest\classes>cd c:\development\java\domtest
C:\Development\Java\domtest>java domtest.domtestmain

[x exception handler output][y output]
[z output]


What's going on? Depending on the size of the file parsed in x()
sometimes in jbuilder the [x exception handler output] appears inside [z
output]. Oddly enough the output order appears to stay the same with
jdk1.3 regardless of input (admittedly limited) file size fluctuation.

Andrea


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to