質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

Q&A

1回答

3751閲覧

JSP でメソッドから欲しい戻り値が戻ってこない

samurai_se

総合スコア15

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

0グッド

0クリップ

投稿2018/11/29 13:55

編集2022/01/12 10:55

やろうとしていること

前画面である入力画面で取得したoptionタグのvalueを、次の確認画面で文字列に変換して表示したい。

###事象のスクショ
入力画面

入力内容確認画面

実装内容

■入力した値をrequestで受け取り、次の画面へ渡すためのクラス

Java

1package action; 2 3import javax.servlet.http.HttpServletRequest; 4import javax.servlet.http.HttpServletResponse; 5 6import tool.Action; 7import tool.Verify; 8import util.StringQuery; 9import util.StringUtil; 10 11 12public class RegistCheckAction extends Action{ 13 14 /** 15 * 16 * 検証用クラスのインスタンス化 17 * 18 */ 19 Verify vr = new Verify(); 20 21 public String execute( 22 HttpServletRequest request, HttpServletResponse response) throws Exception{ 23 24 response.setContentType("text/html; charset=UTF-8"); 25 request.setCharacterEncoding("UTF-8"); 26 27 String booktitle = request.getParameter(StringQuery.BOOKTITLE); 28 String author = request.getParameter(StringQuery.AUTHOR); 29 String publisher = request.getParameter(StringQuery.PUBLISHER); 30 String publishday = request.getParameter(StringQuery.PUBLISHDAY); 31 String category = request.getParameter(StringQuery.CATEGORY); 32 33 int btcheck = vr.booktitleVerify(booktitle); 34 int aucheck = vr.authorVerify(author); 35 int yearcheck = vr.publishedYearVerify(publishday); 36 37 if(btcheck==StringUtil.MOJHI_OK && aucheck==StringUtil.MOJHI_OK 38 && yearcheck==StringUtil.MOJHI_OK){ 39 40 setBookInformation(booktitle,author,publisher,publishday,category,request); 41 42 return StringUtil.VIEW_FOLDER + StringUtil.SLASH + StringUtil.PAGE_REGIST_CHECK 43 + StringUtil.DOT + StringUtil.JSP_EXTENSION; 44 45 }else{ 46 47 setBookInformation(booktitle,author,publisher,publishday,category,request); 48 49 request.setAttribute(StringQuery.BOOKTITLE_CK, btcheck); 50 request.setAttribute(StringQuery.AUTHOR_CK, aucheck); 51 request.setAttribute(StringQuery.PUBLISHDAY_CK, yearcheck); 52 53 return StringUtil.VIEW_FOLDER + StringUtil.SLASH + StringUtil.PAGE_REGIST 54 + StringUtil.DOT + StringUtil.JSP_EXTENSION; 55 56 } 57 58 } 59 60 61 62 63 private void setBookInformation(String booktitle, String author, String publisher, String publishday 64 ,String category,HttpServletRequest request) { 65 66 request.setAttribute(StringQuery.BOOKTITLE, booktitle); 67 request.setAttribute(StringQuery.AUTHOR, author); 68 request.setAttribute(StringQuery.PUBLISHER, publisher); 69 request.setAttribute(StringQuery.PUBLISHDAY, publishday); 70 request.setAttribute(StringQuery.CATEGORY, category); 71 72 } 73 74 75 76}

■入力確認画面

JSP<%@

1 pageEncoding="UTF-8"%> 2<%@page import="util.StringUtil"%> 3<%@page import="util.StringQuery"%> 4<%@page import="java.text.SimpleDateFormat"%> 5<%@page import="java.util.Calendar"%> 6<% Calendar cal = Calendar.getInstance();%> 7 8<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 9<head> 10<title>Top</title> 11 12<link href='<%=StringUtil.CONTEXTPATH + StringUtil.INPUTCSS%>' 13 rel='stylesheet' type='text/css' /> 14<script type="text/javascript" src="<%=StringUtil.MAINJS%>"></script> 15<meta charset="<%=StringUtil.SET_ENCODING %>" /> 16<meta name="viewport" content="width=device-width, initial-scale=1.0" /> 17 18</head> 19 20<body> 21 <div class="container"> 22 <div id="login-form"> 23 <div id="box"> 24 25 <form 26 action="<%=StringUtil.REGISTCOMPLETE + StringUtil.CONTROLLER %>" 27 method="post"> 28 29 <div> 30 BookTitle:<%=request.getAttribute(StringQuery.BOOKTITLE)%></div> 31 <div> 32 Author:<%=request.getAttribute(StringQuery.AUTHOR)%></div> 33 <div> 34 Publisher:<%=request.getAttribute(StringQuery.PUBLISHER)%></div> 35 <div> 36 Publishday:<%=request.getAttribute(StringQuery.PUBLISHDAY)%></div> 37 <div> 38 Category: 39 <% 40 String checkchar = (String)request.getAttribute(StringQuery.CATEGORY); 41 out.println(dispCategory(checkchar)); 42 %> 43 44 <%! String dispCategory(String checkchar){ 45 46 if(checkchar=="7"){ 47 48 return ""; 49 50 }else if(checkchar=="1"){ 51 52 return "漫画"; 53 54 }else if(checkchar=="2"){ 55 56 return "文庫"; 57 58 }else if (checkchar=="3"){ 59 60 return "大型本"; 61 62 }else if (checkchar=="4"){ 63 64 return "雑誌"; 65 66 }else if (checkchar=="5" || checkchar.equals("5")){ 67 68 return "参考書"; 69 70 }else{ 71 72 return "新書"; 73 74 } 75 76 }%> 77 78 </div> 79 80 <input type="hidden" name="booktitle" 81 value="<%=request.getAttribute(StringQuery.BOOKTITLE)%>" /> <input 82 type="hidden" name="author" 83 value="<%=request.getAttribute(StringQuery.AUTHOR)%>" /> <input 84 type="hidden" name="publisher" 85 value="<%=request.getAttribute(StringQuery.PUBLISHER)%>" /> <input 86 type="hidden" name="publishday" 87 value="<%=request.getAttribute(StringQuery.PUBLISHDAY)%>" /> <input 88 type="hidden" name="runame" 89 value="<%=session.getAttribute(StringQuery.USERNAME) %>" /> <input 90 type="hidden" name="registday" 91 value="<%=cal.get(Calendar.YEAR) 92 + "-" + (cal.get(Calendar.MONTH) + 1) + "-" + cal.get(Calendar.DAY_OF_MONTH)%>" /> 93 <input type="hidden" name="category" 94 value="<%=request.getAttribute(StringQuery.CATEGORY)%>" /> 95 96 97 98 <input type="submit" name="submit" value="Regist" /> 99 100 101 102 </form> 103 104 </div> 105 </div> 106 </div> 107 108</body> 109</html>

request.getAttribute(StringQuery.CATEGORY)の中身

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

Stringの比較には、String#equalsメソッドを使います。 checkchar=="7" ではなく、"7".equals(checkchar) ではないでしょうか。

投稿2018/12/01 15:42

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

samurai_se

2018/12/02 03:12

ご指摘の通り修正したのですが変わらずでした…
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問