Download
Magazine
Develop
Account
Download
Magazine
Develop
Login
Forgot Account/Password
Create Account
Language
Help
Language
Help
×
Login
Login Name
Password
×
Forgot Account/Password
Category:
Software
People
PersonalForge
Magazine
Wiki
Search
OSDN
>
Find Software
>
System
>
TERASOLUNA Framework
>
Forums
>
Open Discussion
>
【バッチFW】NullColumnFormatterについて
TERASOLUNA Framework
Description
Project Summary
Developer Dashboard
Web Page
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
History
Downloads
List of Releases
Stats
Source Code
Code Repository list
Subversion
View Repository
Ticket
Ticket List
Milestone List
Type List
Component List
List of frequently used tickets/RSS
Submit New Ticket
Documents
Wiki
FrontPage
Title index
Recent changes
Doc Mgr
List Docs
Communication
Forums
List of Forums
Open Discussion (1277)
Mailing Lists
list of ML
terasoluna-information
News
Forums:
Open Discussion
(Thread #19336)
Return to Thread list
RSS
【バッチFW】NullColumnFormatterについて (2008-07-17 16:38 by
kevin_vain
#37651)
Reply
Create ticket
バッチFWを使用させていただいております。
ファイル書き込み際に、String型のカラムがNULLの場合、NullPointerExceptionが発生していますが、ColumnFormatterの原因でしょうか?
ソースコードをみますと;
46行目;return method.invoke(t).toString();
一時対策として、以下のようなColumnFormatterを実装していますが、よろしいでしょうか?
Object o = method.invoke(t);
if (o != null) {
return method.invoke(t).toString();
} else {
return "";
}
以上
よろしくお願いいたします。
Reply to #37651
×
Subject
Body
Reply To Message #37651 > バッチFWを使用させていただいております。 > > ファイル書き込み際に、String型のカラムがNULLの場合、NullPointerExceptionが発生していますが、ColumnFormatterの原因でしょうか? > > ソースコードをみますと; > 46行目;return method.invoke(t).toString(); > > 一時対策として、以下のようなColumnFormatterを実装していますが、よろしいでしょうか? > > Object o = method.invoke(t); > if (o != null) { > return method.invoke(t).toString(); > } else { > return ""; > } > > 以上 > よろしくお願いいたします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Login
Nickname
Preview
Post
Cancel
RE: 【バッチFW】NullColumnFormatterについて (2008-07-23 18:37 by
kuramotoki
#37787)
Reply
Create ticket
ファイル行オブジェクトでのString項目がNULLの場合、
バッチFWがデフォルトで設定しているNullColumnFormatter, NullColumnParserを使用すると、
NullPointerExceptionが発生します。
これらのクラスは項目がNULLかどうかは考慮せずに処理を実行します。
NULL値を「""(空文字)」にするか例外とするかは業務仕様によると考えているからです。
項目の値がNULLの場合の対応方法は、提示されている方法で問題ないですが、
下記のようにしたほうがより良いと思います。
===
Object o = method.invoke(t);
if (o != null) {
//return method.invoke(t).toString(); //←method.invoke(t)を再度実行せず、
return o.toString(); // ← すでに取得しているObjectでtoString()する
} else {
return "";
}
===
以上です。
Reply to
#37651
Reply to #37787
×
Subject
Body
Reply To Message #37787 > ファイル行オブジェクトでのString項目がNULLの場合、 > バッチFWがデフォルトで設定しているNullColumnFormatter, NullColumnParserを使用すると、 > NullPointerExceptionが発生します。 > これらのクラスは項目がNULLかどうかは考慮せずに処理を実行します。 > NULL値を「""(空文字)」にするか例外とするかは業務仕様によると考えているからです。 > > 項目の値がNULLの場合の対応方法は、提示されている方法で問題ないですが、 > 下記のようにしたほうがより良いと思います。 > === > Object o = method.invoke(t); > if (o != null) { > //return method.invoke(t).toString(); //←method.invoke(t)を再度実行せず、 > return o.toString(); // ← すでに取得しているObjectでtoString()する > } else { > return ""; > } > === > 以上です。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Login
Nickname
Preview
Post
Cancel
RE: 【バッチFW】NullColumnFormatterについて (2008-07-24 14:05 by
kevin_vain
#37798)
Reply
Create ticket
了解しました。
ありがとうございました。
Reply to
#37787
Reply to #37798
×
Subject
Body
Reply To Message #37798 > 了解しました。 > ありがとうございました。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Login
Nickname
Preview
Post
Cancel