html:select では bean:define タグの記述は必須

以前、このブログで、JSP の実行で、

HTTPステータス 500 - javax.servlet.ServletException: javax.servlet.jsp.JspException:
Cannot find bean under name sex_list


結論として、

<bean:define id="sex_list" name="hogeForm" property="sex_list" scope="request"/>

という記述を追加してバッチリだったが、別の解として、

<html:form>タグか、<html:select>タグに name 属性で hogeForm を指定すれば良い

とも書いた。

・・・が、どうも select 項目の場合、option 項目に name 属性はないんで、<bean:define>タグの記述は必須のようである。

例えば、

<html:select name="hogeForm" property="sex">
  <html:option collection="sex_list" property="label" labelProperty="value" />
</html:select>

という具合に <html:select>タグに name 属性でフォーム bean の名前を与えても、結局「Cannot find bean under name sex_list」なエラーが出てしまう。
collection 属性で指定する項目がどのフォームbean に含まれているか、<bean:define>タグで記述しないと駄目なようだ。

自分のブログを信じて、「name 属性で指定しているから大丈夫なはず」と思い込み、ハマって貴重な時間を無駄にしてしまった(^^;

トラックバック(0)

このブログ記事を参照しているブログ一覧: html:select では bean:define タグの記述は必須

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/4974

コメントする

このブログ記事について

このページは、shinodaが2018年9月 3日 12:52に書いたブログ記事です。

ひとつ前のブログ記事は「高森・みどり合祭の『文化の部』に参加した」です。

次のブログ記事は「SPF レコードで再帰的に include してしまうというミス」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら