NullPointerException

が発生して何が原因か調べていた。設定とかをXMLで扱ってみたくて、XMLBeans を利用するようにしたのだが、Eclipse から Tomcat を起動するようにしていると、NullPointerException を拾って実行が途中で止まる(Suspendする)。TestCase で実行する分には全く問題がなくてなぞだった。とりあえず、スタックを見ると、ResolverUtil というクラスの初期化で、

try {
Object o = Class.forName(System.getProperty("xmlbean.entityResolver")).newInstance();
} catch (Exception e) {
...
}

という感じでクラス名をSystemプロパティから持ってきてインスタンスを生成している。この先で例外が投げられているのだが、この呼び出し自体は、Exception で囲われている。なので、なんで動作が止まるのか分からず...。このNullPointerExceptionの原因は、Systemプロパティ の "xmlbean.entityResolver" に値が設定されていないことが原因(つまり、クラス名が null) なのだが、それが問題なのだろうか。。。という感じだ。色々、調べてみたのだが、"xmlbean.entityResolver" は誰かが、設定しているわけでもない。

色々、考えてみたが、結論としては、EclipseTomcat Plugin が気を利かせて、NullPointerException を拾ってるんじゃないの?という気になってきた。なので、そのまま再開すれば、普通に動き出した。というか、動いているじゃん 。ほんとは、ちゃんとチェックすればいいんだろうけど、多分、コード書いた人は、それも見越しているんじゃないかと思うと、直さなくてもいいかも。。でも、Tomcatとまるし。。まぁ、また今度考えるか。