Thank you,
that is :)
Slavic
Army wrote:
> Veaceslav Chicu wrote:
>
>> it's ok
>> can I redirect this information to console?
>
>
> If the info you want is the info from setting
> "derby.language.logStatementText" to true, then you can redirect it to
> output using Stanley's suggestion (see his original response to your
> email).
>
> Ex. If your program is called "myProg", then the following would run
> your program and redirect all of "logStatementText" info to System.out:
>
> java -Dderby.language.logStatementText=true
> -Dderby.stream.error.field=java.lang.System.out myProg
>
> If that does what you want, then you don't have to worry about
> "setLogWriter()" and can stop reading now :)
>
>> I have:
>>
>> Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
>> Connection conn = DriverManager.getConnection("jdbc:derby:bookstoredb;",
>> "slavic", "cs");
>> DriverManager.setLogWriter(new PrintWriter(new
>> FileOutputStream("trace.txt")));
>> why trace.txt is empty? why I don't see log information there?
>
>
> 1) The documentation at the links you pasted says that
> DriverManager.setLogWriter() has to be called BEFORE the connection is
> made. The code snippet that you pasted connects first, and then calls
> setLogWriter(), so it won't work.
>
> 2) For completeness, you should make sure you are flushing/closing the
> PrintWriter stream before terminating your program.
>
> 3) If you really want the information that is written by
> "setLogWriter()" (instead of the information that is written when
> derby.language.logStatementText is true), and if you want to redirect
> that output to the console, then your code should look like this:
>
> PrintWriter pW = new PrintWriter(System.out);
> DriverManager.setLogWriter(pW);
>
> Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
> Connection conn =
> DriverManager.getConnection("jdbc:derby:bookstoredb",
> "slavic", "cs");
>
>
> Hope that helps,
> Army
>
>