yohjizzz's Blog

I'm a Programmer.

ConverterアノテーションはHOT deploy対象外?

HOT deployモードにて、

    @DateTimeConverter(pattern = "yyyy/MM/dd")
    public Date date;

↑を↓

    @DateTimeConverter(pattern = "yyyy/MM/dd HH:mm:ss")
    public Date date;

このように pattern の値を変更しても以降のリクエストでは反映されない…(もちろん再起動すればok。)


あっ!


オブジェクトはSMART deploy対象でも、フィールドに紐づくアノテーションはSMART deploy対象外?
1度読み込まれたアノテーションは、同名のフィールドではリクエスト毎にはロードされないのか…
ってことは、Validatorアノテーションもそうなのか、、と思うけど、そうでもない。


たとえば、

    @Length(target = "doValidate", maximum = 32)
    public String name;

↑を↓

    @Length(target = "doValidate", maximum = 64)
    public String name;

このように maximum の値を変更すれば、以降のリクエストでは反映される。


まぁ定数アノテーションでは起こりえないだろうけど…せっかくなのでソースコード見てみることにしよ○



しかしHOT deployだと喫煙回数が減るね…w
Tomcat なんかよりも WebLogicOracle AS の方がずっと実感できる。

追記

id:koichik さんに早速対応して頂きました。
SNAPSHOTのサンプル(https://www.seasar.org/svn/teeda/trunk/teeda-html-example)をチェックアウトして確認したところ、
問題(上記現象)なく動作しました。ありがとうございました。m(_ _)m