私はこのコードを使用しています:
Logger.getLogger( SampleAction.class.getName() ).log( Level.SEVERE, null, ex );
ロガーに例外を記録するため。
例外をログに記録するとともに、UI に例外を表示しています。
この例外を表示しないようにするにはどうすればよいですか?
このような別のクラスを作成するのはどうですか。
public class Log{
FileConnection fc;
OutputStream outStream;
InputStream inStream;
Log(String exceptionClass, String errorMessage){
try{
fc = (FileConnection)Connector.open("[path]");
if(!fc.exists()) fc.create();
inStream = fc.openInputStream();
outStream = fc.openOutputStream();
if(inStream!=null)
outStream.write(IOUtilities.streamToBytes(instream)); //use this so overwriting is enabled
outStream.write((exceptionClass+"\n").getBytes());
outStream.write((errorMessage+"\n").getBytes());
}
catch(IOException e){}
finally{
try{
inStream.close();
outStream.close();
fc.close();
}catch(Exception e){}
}
}
}
次に、try ブロックをキャッチするたびに Log クラスを呼び出します。
例えば
try{
//your process
}catch(Exception e){
//call log
new Log(e.getClassName(), e.getMessage());
}
各ログの日付と時刻を書き込むと、変更できます。
次の 2 つのことが起こっています。
ロギングを含むメソッド全体を貼り付けてください。