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

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

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

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

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

サーブレット

サーブレット(Servlets)とはウェブやアプリケーションサーバー上に動くプログラムのことであり、ウェブブラウザや他のHTTPクライエントとデータベースやHTTPサーバー上のアプリケーションの中間層としての働きをします。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

1回答

2679閲覧

【初心者】JSPでのエラーページへの遷移がうまくいきません、解決法求ム。

keith3341

総合スコア0

JSP

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

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

サーブレット

サーブレット(Servlets)とはウェブやアプリケーションサーバー上に動くプログラムのことであり、ウェブブラウザや他のHTTPクライエントとデータベースやHTTPサーバー上のアプリケーションの中間層としての働きをします。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2021/09/12 14:55

編集2021/09/12 15:07

非常に見づらいかもしれませんがよろしくお願いいたします

入力画面(total-in)から入力された数値を結果表示画面(total-out)へ出力し
入力画面で数値の入力がなかった場合エラーページ(total-error)へ遷移するという動作をさせたいです。

■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

入力画面で数値を入力した場合はちゃんと遷移するのですが、
数値を入力しなかったときに"http 500 内部サーバー エラー"と出てしまいました

該当のソースコード

【total-in.jsp】 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@include file="../header.html" %> <form action="total-out.jsp" method="post"> <input type="text" name="price"> 円× <input type="text" name="count"> 個= <input type="submit" value="計算"> </form> <%@include file="../footer.html" %> 【total-out.jsp】 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@include file="../header.html" %> <%@page errorPage="total-error.jsp" %> <% request.setCharacterEncoding("UTF-8"); int price=Integer.parseInt(request.getParameter("price")); int count=Integer.parseInt(request.getParameter("count")); %> <%=price %>円×<%=count %>個=<%=price*count %>円 <%@include file="../footer.html" %> 【total-error.jsp】 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@include file="../header.html" %> <%@ page isErrorPage="true" %> <p>数値を入力してください。</p> <p><%=exception %></p> <%@include file="../footer.html" %>

試したこと

教本を見ながらやっているので間違えているであろう箇所を見直したりしましたがわかりませんでした。

補足情報(FW/ツールのバージョンなど)

eclipce 2020

必要情報があれば質問お願いします。

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

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

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

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

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

guest

回答1

0

未入力はつまりは空やnullなわけで、空やnullはintにparseできません(もちろん数値として認められる文字列以外もparseできません)。
parseする前に入力内容のチェックをしてください。

こういうときは教本ではなくドキュメントです。
Integer.parseInt()

※ドキュメントに書かれている例外NumberFormatExceptionを拾う手もありますが、色々試してください

投稿2021/09/12 20:11

m.ts10806

総合スコア80875

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問