いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Tapestry奮闘記-0015 (booleanの扱い)

Tapestryの設定ファイル(page/application/library/component)で
TYPEがbooleanとドキュメントに記述されているものについては、ドキュメントに
よると以下のリストから指定する必要があるみたいです。

  • trueを表す場合
    • true
    • yes
    • on
    • 1
    • t
    • y
    • aye
  • falseを表す場合
    • false
    • no
    • off
    • 0
    • f
    • n
    • nay

問題なのは、コンポーネント定義(jwc)でついいつものくせで


ってしちゃったときです。当然エラーになるのですが、
困ったことに,エラー表示がTomcatとResinでは変わります。
Tomcatの方は、普通に"値は、リストから選べ"って感じの
Exception画面を吐いてくれるのですが、resinの場合は、
"クラスパスからコンポーネント定義ファイル(jwc)が読み込めない"って
エラーになります。んで、パスとかを見直しても問題ないのにエラーとなる・・・。
実際は、リストの値が間違っているだけなんですがw
これは、TomcatとResinでデフォルトで使用されているXMLパーサーが
違うからです。TomcatはXerces, Resinは自身のオリジナルXMLパーサーが
java apiのパーサー生成ファクトリより生成されて返されるからでしょう。
Resinは起動とかが早いのでいつもつかっていたのですが、ハマリました・・。