S2TestCaseでフィールド名とdiconファイル名が衝突

test.examples.dao.EmployeeDaoTest.javaを実行するとExceptionが発生します。

.DEBUG 2004-08-02 00:45:50,803 [main] 物理的なコネクションを取得しました
DEBUG 2004-08-02 00:45:50,803 [main] 論理的なコネクションを取得しました
DEBUG 2004-08-02 00:45:51,043 [main] 論理的なコネクションを閉じました
DEBUG 2004-08-02 00:45:51,333 [main] 物理的なコネクションを閉じました
E
Time: 1.392
There was 1 error:
1) testGetAllEmployee(test.examples.dao.EmployeeDaoTest)java.lang.IllegalArgumentException
	at sun.reflect.UnsafeObjectFieldAccessorImpl.set(Unknown Source)
	at java.lang.reflect.Field.set(Unknown Source)
	at org.seasar.framework.util.FieldUtil.set(FieldUtil.java:45)
	at org.seasar.extension.unit.S2TestCase.bindField(S2TestCase.java:343)
	at org.seasar.extension.unit.S2TestCase.bindFields(S2TestCase.java:316)
	at org.seasar.extension.unit.S2TestCase.runBare(S2TestCase.java:271)
	at test.examples.dao.EmployeeDaoTest.main(EmployeeDaoTest.java:23)

FAILURES!!!
Tests run: 1,  Failures: 0,  Errors: 1

フィールド名称をkeyにComponentを取ってこようとするところ、同一名称のdiconファイルを読んでいるためにS2ContainerImplを取得してしまっている模様です。EmployeeDaoTestの場合フィールドもdicon(includeされてるやつ)も「dao」ですね。

bindFieldメソッドの条件分岐でNameよりも先にClassで取ってくるようにすればOKかも?