- PR -

requestにエラーがでるのですが・・・

投稿者投稿内容
mihana
常連さん
会議室デビュー日: 2002/09/03
投稿数: 24
投稿日時: 2002-09-03 16:23
基本的な部分?でつまって困ってます。
ネットでいろいろ調べてここにたどり着きました。
初心者ですので質問自体に不備もあると思いますがよろしくお願いします。

質問です。------------

servlet側から


request.setAttribute("a",A);
String add = "/list.jsp";
ServletContext sc = getServletConfig().getServletContext();
RequestDispacher rd = sc.getRequestDispacher(add);
rd.forward(request, response);


という形でJSPに値を投げて
JSP側で


String B = (String)request.getAttribute("a");


と受け取ってあげたいのですが、実行するとエラー画面になり


ERROR : 500

Location:/myapp/list.jsp
org.apache.jasper.JasperException: JSPのクラスをコンパイルできません
C:\tomcat\work\localhost_8080%2Fmyapp\_0002flist_00032_0002ejsplist_jsp_0.java:19:
requestは未定義な変数またはクラス名です。
String B = (String)request.getAttribute("a");
^
と表示されます。

周囲の人間に聞いても、「環境」が問題なんじゃないの?といわれるのですが、
元々環境も前に使用していたものを受け継いで、そのときに作成されたであろうソースは正常に動作します。

開発環境はWIN2000でtomcat3.2 apache1.3.24の連結型を使用しています。


GON
常連さん
会議室デビュー日: 2002/09/03
投稿数: 28
お住まい・勤務地: 八王子
投稿日時: 2002-09-03 18:34
初投稿でいきなりすいません。
"a"の型はStringなのですか?
GON
常連さん
会議室デビュー日: 2002/09/03
投稿数: 28
お住まい・勤務地: 八王子
投稿日時: 2002-09-03 18:40
インポートできてないんじゃないでしょうか?
mihana
常連さん
会議室デビュー日: 2002/09/03
投稿数: 24
投稿日時: 2002-09-03 18:46
説明不足ですみません。。。

そうです。Stringです。
実際には最初にHTMLがあって、HTMLからservletに渡してそのあとJSPに渡すという形にしたつもりなのですが。。。

まだ、一ヶ月くらいしかやってないので意図が伝わりにくくてすみません。
mihana
常連さん
会議室デビュー日: 2002/09/03
投稿数: 24
投稿日時: 2002-09-03 18:49
引用:

GONさんの書き込み (2002-09-03 18:40) より:
インポートできてないんじゃないでしょうか?



JSPって勝手にimportしてくれるんじゃないんですか?
本とかにはそう書いてあったんですけど。。。。
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-09-03 18:54
{} の対応がとれてないとみた。
mihana
常連さん
会議室デビュー日: 2002/09/03
投稿数: 24
投稿日時: 2002-09-03 19:11
引用:

しょむさんの書き込み (2002-09-03 18:54) より:
{} の対応がとれてないとみた。



お返事ありがとうございますぅ。
{}の数を調べましたが、合ってました。

確認方法として正しいのかわからないんですけど
JSP側で「String B = (String)request.getAttribute("a");」
というところをコメントにして代わりに
「String B = "mihana"」ってやるとちゃんとJSPのHTMLを画面に表示してくれるんです。。。
 やっぱり値の受け渡しができてないのかな??と素人なりに考えたんですけど。
どうでしょう?
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-09-03 20:00
ありゃ。はずれでしたか。

C:\tomcat\work\localhost_8080%2Fmyapp\_0002flist_00032_0002ejsplist_jsp_0.java:19:
requestは未定義な変数またはクラス名です。

っていってんだから、request って変数が見えてないってことですよね。
値をとれるとかとれないとか関係なく。

TOMCAT_HOME/work/localhostなんちゃら/_0002flist_00032_0002ejsplist_jsp_0.java を見るのが一番はやいっちゃーはやいんですが。

import もなにも、JSP では request, responce, session, out 等々のオブジェクトは暗黙のうちに作られて渡されるのが仕様ですから、カッコの対応がとれてなくて関数を終わらせちゃってるとか、単なるスペルミスとか、そのぐらいしか思いつきませんが。

もしかして、<%! %> 内で request 使おうとしてるとか?

スキルアップ/キャリアアップ(JOB@IT)