• 締切済み

jspでのパラメータでの値渡しについて

最近、JSPについて勉強していていろいろ作っているのですが、 JSPでサーブレットに値を渡そうとしたのですが、内容がNULLになってしまいます。 HTMLとJSPでは a hrefでのパラメータ渡し方が違うんでしょうか? select.jspからTest.javaへ値を渡したいです。 <a href="/testPrj/Test?myans=ア&toi"><font size="5">ア</font></a> <a href="/testPrj/Test?myans=イ&toi"><font size="5">イ</font></a> <a href="/testPrj/Test?myans=ウ&toi"><font size="5">ウ</font></a> <a href="/testPrj/Test?myans=エ&toi"><font size="5">エ</font></a> とselect.jspでやっており、(変数toiは"問 ○○"みたいな感じです) String myans=(String)req.getParameter("myans"); と サーブレットで受け取ろうとしています。 いろいろとやってみたのですが、サーブレット側で受け取ったmyansを表示させるとnullに なっていました。 よろしくお願いします。

  • Java
  • 回答数1
  • ありがとう数0

みんなの回答

回答No.1

できるよ。おそらく基礎ができていない。 index.jspで以下を記述。 <%@page import="java.net.URLEncoder"%> <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> </head> <body> <a href="/ExerciseApplication/Test?myans=<%=URLEncoder.encode("ア","UTF-8")%>&toi">ア</a> <a href="/ExerciseApplication/Test?myans=<%=URLEncoder.encode("イ","UTF-8")%>&toi">イ</a> <a href="/ExerciseApplication/Test?myans=<%=URLEncoder.encode("ウ","UTF-8")%>&toi">ウ</a> <a href="/ExerciseApplication/Test?myans=<%=URLEncoder.encode("エ","UTF-8")%>&toi">エ</a> <a href="/ExerciseApplication/Test?myans=<%=URLEncoder.encode("オ","UTF-8")%>&toi">オ</a> </body> </html> TestServlet.javaで以下を記述 package test; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(name = "TestServlet", urlPatterns = {"/Test"}) public class TestServlet extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String query = request.getParameter("myans"); System.out.println(query); // コンソールに出力 } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } } EncordingFilter.javaで以下を記述 package common; import java.io.IOException; import javax.servlet.DispatcherType; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebFilter; import javax.servlet.annotation.WebInitParam; import javax.servlet.http.HttpServletRequest; @WebFilter( urlPatterns = {"/*"}, initParams = { @WebInitParam(name = "encoding", value = "UTF-8") }, dispatcherTypes = { DispatcherType.FORWARD, DispatcherType.REQUEST, DispatcherType.INCLUDE } ) public class EncodingFilter implements Filter{ private String encoding = null; @Override public void destroy() { } @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest)request; req.setCharacterEncoding(this.encoding); chain.doFilter(request, response); } @Override public void init(FilterConfig config) throws ServletException { this.encoding = config.getInitParameter("encoding"); } }

関連するQ&A

  • jspから別のjspへパラメータが送信できない

    javaBeanを利用してjspを作成したけど Test.jspのソース <%@ page contentType="text/html; charset=Shift_JIS" %> <%@ page import="struts.*" %> <jsp:useBean id="formprocess" class= "struts.FormProcess" scope="application" /> <jsp:setProperty name="formprocess" property="*"/> <html> <head> <title>TEST</title> </head> <h2>情報の入力</h2> <form method="GET" action="/javaroad/jspdir/Test_1.jsp"> <p> 名前: <input type="text" name="name" size=30> <p> メールアドレス: <input type="text" name="mailaddress" size=30> <p> <input type="submit" value="送信"> </form> </center> </body> </html> Test_1.jspのソース <%@ page contentType="text/html; charset=Shift_JIS" %> <%@ page import="struts.*" %> <jsp:useBean id="formprocess" class= "struts.FormProcess" scope="application" /> <html> <head> <title>TEST</title> </head> <body> <p> 名前: <jsp:getProperty name="formprocess" property="name"/> <p> メールアドレス: <jsp:getProperty name="formprocess" property="mailaddress"/> </body> </html> Beanのソース package struts; public class FormProcess { String name; String mailaddress; public void setName(String name) { this.name = name; } public String getName() { return name; } public void setMailaddress(String mailaddress) { this.mailaddress = mailaddress; } public String getMailaddress() { return mailaddress; } } Test.jspでデータを入力して送信ボタンを押すとTest_1.jspではnullが表示します。前の入力したデータではないです。どうしたらできますか?

    • ベストアンサー
    • Java
  • 配列のメソッド

    配列のメソッドをセッターしてゲッターで取得したいのですがどのようにすればいいのかわかりません(--;)セッターをまず作成しましたがエラーになって出来ません・・・どなたかお願いします。 ↓以下セッターです。 public class KanaHenkanData {   //全角を格納するメソッド   public char[] setZenkaraHan(char[] haze) {     //(全角)ア、イ、ウ、エ、オ・・・・     char[] zenkaku = {'ア','イ','ウ','エ','オ'};          //zenkakuを返す     return zenkaku;   }   //半角を格納するメソッド   public void setHankaraZen(int a,String[] zeha) {     //(半角)ア、イ、ウ、エ、オ・・・・     String[] hankaku = {"ア","イ","ウ","エ","オ};     //hankakuを返す     return hankaku;   } }

    • ベストアンサー
    • Java
  • 鋭角三角形になるときのxのとりうる値の範囲

    この問題がチャート式を調べてみても解けません>< 助けていただけませんか? 3辺の長さが3,4、Xである三角形ABCがある。 この時Xのとりうる値の範囲は [ア]<x<[イ] である。またこの三角形ABCが鋭角三角形になるときのxのとりうる値の範囲は [ウ]<x<[エ] ア、イ、ウ、エに当てはまるものを入れよ。 ア、イはたぶんなんとかわかりました。 公式:三角形の成立条件 A-B<C<A+B を使って 1<x<7となりました。たぶん・・・

  • 「ほとんどの」を表す表現

    学校のテストでこのような問題が出ました。 (   )the seats are reserved today. ア Almost of イMost of all ウ Almost all エ a little この問題でアとエは簡単に外すことが出来ます。しかし、イとウそちらとも可能であると思うんですが、どうでしょうか?文法的に教えてもらえたら幸いです。

  • リットル・デシリットル・ミリリットルの計算方法教えて下さい

    ・かさの多い順に左から記号を書きます。  正しいのはどれでしょう。 ア16dl イ1300ml ウ1l7dl エ900ml  (1)ア→ウ→イ→エ  (2)ウ→ア→イ→エ  (3)ウ→イ→ア→エ  (4)エ→イ→ア→ウ ○1l=10dl 1l=1000ml というのを教科書で習ったのですがすべて同じ単位 にそろえる事ができないのですが,どうやって 教えたらいいのでしょう…? 親の私がなやんでしまって^^; すいません!教えてください。

  • 国語 文法 助詞 

    http://okwave.jp/qa/q9237816.html この質問をした者です ここでは、自分の考えを書きながら皆さんの考えを聞こうかなと思います (1)イは終助詞で、ウは並立ですよね  では、アとエは何なのでしょうか (2)イは強調でエは(だけを)に書き換えられるやつですよね  では、アとウは何なのでしょうか (3)エが添加ですよね (4)問題は類推ですか?  ならば、アが類推なので、それが答えですよね  では、イとウとエは何でしょうか。 (5)アの「その価値に気づかない」は誤りで「散歩していた」が正解です  アは動作の平行、ウは確定の逆接、エは動作の平行  では、イと問題文は何なのでしょうか (6-1)問題文が類推、エも類推   では、アとイとウは何なのでしょうか (6-2)「だけ」に置き換えるとアが変えられて    イは数量?ウは動作の終了?    エは何でしょうか (7)問題文が強調、イが強調、ウは仮定の逆接   アとエは何でしょうか (8)問題が添加なので、答えはア   エが類推   イとウは何なのでしょうか (9)問題文が動作の平行なので、答えはア   イは確定の逆接   ウとエは何でしょうか (10)問題文が確定の逆接、アが添加?エは動詞+「の」で体言と同じ働きになる「に」は?    イとウは何でしょうか (11-1)問題が場所なので、答えはウ、エは材料    アとイはなんですか? (11-2)問題が確定の逆接なので、答えはウ    アとイとエは何でしょうか (11-3)問題が場所なので答えはウ、エは確定の逆接    アとイはなんですか? (12)アは接続助詞、イは 形容動詞、    ウとエとオはなんでしょうか 回答をいただいたのですが、よく分かりませんでした 自分の言ってる事が正しいかどうか、意味、用法は何かを答えていただけると 嬉しいです ご回答お願いします。  

  • 鋭角三角形に関する問題 xのとりうる値の範囲

    この問題がチャート式を調べてみても解けません>< 助けていただけませんか? 3辺の長さが3,4、Xである三角形ABCがある。 この時Xのとりうる値の範囲は [ア]<x<[イ] である。またこの三角形ABCが鋭角三角形になるときのxのとりうる値の範囲は [ウ]<x<[エ] ア、イ、ウ、エに当てはまるものを入れよ。 ア、イはたぶんなんとかわかりました。 公式:三角形の成立条件 A-B<C<A+B を使って 1<x<7となりました。たぶん・・・

  • 小5の算数です

    問題 0より大きい4つの数、ア・イ・ウ・エが有ります。 4つの数の大きさが次のような関係のとき ア・イ・ウ・エを 左から小さい順に書きましょう  ア=イ×1.2  ウ=イ×0.9  エ=ア÷0.8 と、言う問題です。 甥っ子の為に頑張ってみたのですが自信が無くて。。。 宜しくお願いしますm(__)m

  • 日本語(かなの間違い)

    次の(1)~(4)の文には、それぞれかなのまちがいが一つずつある。まちがっている部分を記号で答え、正しい書き方に改めなさい という(過去問)のがあってわからないので教えてください! (1)ア まちのとうりで  イ ぐうぜんあった  ウ しれあいに  エ こんにちは  オ あいさつした。 (2)ア かぜをひいて  イ やむおえず  ウ がっこうの  エ ぎょうじを  オ けっせきする。 (3)ア しんしょうひんは  イ おきゃくさまの  ウ ごようぼうに  エ もとずいて  オ かいはつされました。 (4)ア ほんだなには  イ むづかしそうな  ウ ほんが  エ かずおおく  オ ならんでいる 問題は上記です お願いします!

  • 教えてくださいっ!!

    教えてくださいっ!! Q 次の熟語と音訓の組み合わせがおなじ熟語をしたから一つ選び、記号で答えなさい。 (1) 本物     ア 強敵 イ 家事 ウ 気軽 エ 雨戸 (2) 手本  ア 合間 イ 場所 ウ 悲鳴 エ 解答 (3) 読点  ア 前進 イ 王様 ウ 身分 エ 青葉 (4) 花屋  ア 遠足 イ 荷物 ウ 野山 エ 見方 おねがいしますううううううう