DWRでBeanを扱うときの注意点
DWRでBeanを扱うときの次のことに注意してください
Beanのなかで公開したいフィールド変数は全て小文字で記述すること。先頭が小文字でも、途中で大文字が混じってるとアウトです。
例えばfIdというフィールド変数の場合、getterとsetterはgetFId(),setFId()というメソッド名になります。実際にこれをDWRでJavaScriptのオブジェクトに変換してみると分かるのですが、このような場合正しく変換されません。
余談ですが、これにひっかかって@RemotePropertyをつけ忘れたのか、メソッド名がおかしいのか、2時間ほど悩まされました。途中で大文字が混じってるフィールド変数だけ変換されていないことになんとか気づきましたが、これはJavaBeanの仕様なんでしょうか。それともDWRの問題なんでしょうか。困ったものです。
間違った例
public class Bean{ private String fId; public void setFId(String id){ this.fId = id; } public String getFId(){ return this.fId; } }