かずきのBlog@hatena

日本マイクロソフトに勤めています。このブログは個人ブログなので、ここに書いている内容は個人的な意見で会社の公式見解ではない点にご注意ください。好きなものは XAML と C# 。苦手なものは型の無い言語です。

VisualWebPackで不可解な動き

VisualWebPackのファイルアップロードコンポーネントのあやしい挙動にはまった。
画面に置いただけで動作が変わってしまう。

再現手順
1)適当なプロジェクトをこさえて下のような画面を作る


2)JSPに下のように同じnameのinputタグをいっぱい書く

<input name="hoge" type="hidden" value="1"/>
<input name="hoge" type="hidden" value="2"/>
<input name="hoge" type="hidden" value="3"/>


3)ボタンのクリックのアクションでHttpServletRequestからhogeのvalueを画面に表示させるコードを書く。

public String button1_action() {
    HttpServletRequest req = (HttpServletRequest) getExternalContext().getRequest();
    String[] values = req.getParameterValues("hoge");
    for (String value : values) {
        info(value);
    }
    return null;
}


4)実行してボタンを押す(ここまでは予想通り)


5)画面にファイルアップロードコンポーネントを置く


6)実行してボタンを押す

何か足りなくね?