• 締切済み

携帯サイト List split

携帯サイトをJSPで作成しているのですが、IEであれば正常に表示される以下のコードがあります。 (SessionでInsertする項目を渡しています。) A: String dataPack = (String)session.getAttribute("dataPack"); String[] insertArray = dataPack.split(","); out.print(insertArray[0]); B: List param = (List)session.getAttribute("paramPack"); out.print(param.get(0)); このどちらも携帯サイトで試すとエラー500になります。 out.print()の部分をコメントアウトすると正常に動作します。 携帯サイトでは、これらのクラスは使用できないのでしょうか?(java.util?) また、使用できないのであればこれらに代わるクラスはありませんでしょうか?

みんなの回答

  • Lieserl
  • ベストアンサー率81% (31/38)
回答No.1

そもそもパラメータがちゃんと渡っていなかったりしませんか? どちらも配列やリストが空なのに、最初の要素を取り出そうとして エラーになっている気がします。 ログに出力するなりできるなら、その方が楽ですが、 とりあえず以下のようにして、どんな値が渡っているのか 確認してみましょう。 A: if (session.getAttribute("dataPack") == null) { out.print("null"); } else { String dataPack = (String)session.getAttribute("dataPack"); out.print(dataPack); } B: if (session.getAttribute("paramPack")==null) { out.print("null"); } else { List param = (List)session.getAttribute("paramPack"); out.print(param.size()); }

ShimantoGa
質問者

お礼

ありがとうございます。 結果は両方ともnullでした。 ただしsessionを入れた直後(遷移前)は正常に値は取得できています。 session.setAttribute("dataPack", parm.toString()); out.print((String)session.getAttribute("dataPack")); session.setAttribute("paramPack", param); out.print(String.valueOf((List)session.getAttribute("paramPack").size())); そうなりますとSessionで上手く値を渡せていない、ということでしょうか。