2006年05月19日

WOBuilderでHiddenFieldを使うと

WebObjectsで画面を作成時ですが、WOBuilder上でHiddenFieldの扱いに不具合があるようです。

HiddenFieldを作る方法として、TextFieldを作成してからStatic InspectorでHiddenに切り替える方法があります。

このとき、要素名が作成時にTextField4のような名前で作成されますが、HiddenFieldに切り替えたとしても名称は変更されません。

ところが、次にTextFieldを作成しようとすると、TextField全体の中で重複しない名前を探しているのか、TextField4が空いているのでその名前をつけてしまいます。HiddenFieldの要素に同じ名前があるかどうかは考慮せれません。このため同じ名前のWebObjectsタグ要素が複数あることになってしまいます。アプリケーションサーバーがこれをパースしてブラウザに返すhtmlを作成するときに、TextFiedld4という名前のタグを変換するのにWOTextFieldの情報を使うのかWOHiddenFieldの情報を使うのかは不定です。この結果、ブラウザに表示される画面は意図したものにはならなくなってしまいます。


今の所、HiddenFieldを作成後、手で名前を変えることで回避しています。

上記現象が常に発生するのかある条件下でのみ発生するのかまでは調べていません。


なお、条件はわかりませんが
TeTextField4WOHiddenField {
}
のような上書きされた状態になってしまい.wo自体の読み込みに失敗するようなこともありました。

本来は
TextField4: WOHiddenField {
}
ですかね。
posted by 永遠製作所 at 12:48| 東京 ☔| Comment(0) | TrackBack(0) | WebObjects | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]


この記事へのトラックバック