On 10/19/06, Tony Wu <[EMAIL PROTECTED]> wrote:

I've tried Log4j on Harmony and found there are many failures caused
by one difference between RI and Harmony. The
Throwable.printStackTrace(PrintWriter) calls the *println* method of
PrinterWriter on RI whereas calls *print* twice(Obviously print
msssage then print a line separator) on Harmony. It will cause
different behavior when a user inherit the PrinterWriter and override
these two methods. Shall we fix it or leave as an non-bug difference?


For this case, RI doesn't conflict with spec, and is reasonable, so I think
we'd better follow RI.  Additionally, log4j has shown its dependency of this
feature!

refer to testcase below,

public class TestThrow {
   public static void main(String[] args) {
       MyWriter mw = new MyWriter(System.out);
       Throwable throwable = new Exception("Just Testing");
       throwable.printStackTrace(mw);
   }
}
class MyWriter extends PrintWriter {
   public MyWriter(OutputStream out) {
       super(out);
   }

   public void print(String s) {
       System.out.println("print");
   }

   public void println(String s) {
       System.out.println("println");
   }
}
OUTPUTS:
RI
println
HARMONY
print
print

--
Tony Wu
China Software Development Lab, IBM

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Best regards,
Andrew Zhang

Reply via email to