[seasar-dev:1199] Re: S2Util
Wataru Yukawa
[E-MAIL ADDRESS DELETED]
2010年 8月 25日 (水) 00:47:48 JST
湯川(wyukawa)です。
悩ましいですね。。。
いい案は思いつかないのですが、
ログとの統一感と今までのやり方を大きくは変えないというポリシーで考えると、
SRuntimeException(format("EXXX0001", a, b, c), t)形式に統一して、
NoSuchConstructorRuntimeExceptionのようなケースは個別対応とする。
例外のメッセージはメッセージコードを含まないものにする。
ただ(ログも含めて)メッセージコードはあったほうがいいと思うので、プロパティファイルを
EUTL0001={0}が見つかりません
ではなく
EUTL0001=[EUTL0001] {0}が見つかりません
形式とする。
というので、いかがでしょう?
initCauseを呼ぶ形式は今までとやり方が変わるので利用者がとまどう可能性があることや、
呼び忘れて例外が消えてしまうのを懸念してのことです。
2010年8月23日23:44 Koichi Kobayashi <[E-MAIL ADDRESS DELETED]>:
> 小林 (koichik) です.
>
> Date: Mon, 23 Aug 2010 23:27:08 +0900
> From: Wataru Yukawa <[E-MAIL ADDRESS DELETED]>
> To: [E-MAIL ADDRESS DELETED]
> Subject: [seasar-dev:1196] Re: S2Util
>
>> ログと同じで
>> throw new SRuntimeException(format("EXXX0001", a, b, c), t)
>> で良い気もしますが、、、どうなんだろ。
>
> 最初はそれにしようかと思ったのですが,
> NoSuchConstructorRuntimeException とか
> NoSuchMethodRuntimeException とかの場合,
> メッセージのためではなく見つからなかった
> コンストラクタやメソッドの引数型を渡すために
>
> NoSuchConstructorRuntimeException(Class<?> targetClass,
> Class<?>... argTypes)
> NoSuchMethodRuntimeException(Class<?> targetClass,
> String methodName, Class<?>... argTypes)
>
> にしたかったりするのです.
>
> あと,SRuntimeException 内部では 2 種類の
> 形式 (メッセージコードを含むのと含まないの) の
> メッセージを持っていて,format() した文字列を
> 渡すようにするとそれができなくなるというのも
> 悩んだポイントです.
> ただし,2 種類の形式のメッセージを保持する必要が
> あるのかは検討の余地がありますが.
>
>
> --
> <component name="koichik">
> <property name="fullName">"Koichi Kobayashi"</property>
> <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
> <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
>
> _______________________________________________
> Seasar-dev mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dev
>
--
name="Wataru Yukawa"
blog="http://d.hatena.ne.jp/wyukawa/"
email="[E-MAIL ADDRESS DELETED]"
twitter="http://twitter.com/wyukawa"
wassr="http://wassr.jp/user/wyukawa"
skype="wyukawa"
Seasar-dev メーリングリストの案内