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

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

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

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

Eclipse

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

servlet

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

Q&A

解決済

3回答

8648閲覧

Java: エラー(型の不一致)

nagahi

総合スコア8

Java

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

Eclipse

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

servlet

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

0グッド

0クリップ

投稿2020/03/24 12:32

サーブレットでパラメーターを取得したい

QandAシステムを作成しています
Eclipseでサーブレット作成中にurgencyのパラメーター取得時に
以下のエラーメッセージが発生しています。
原因をご教授いただけますでしょうか。

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

型の不一致: String型からint型には変換できません

該当のソースコード

java

1package servlet; 2 3import java.io.IOException; 4import java.util.List; 5 6import javax.servlet.RequestDispatcher; 7import javax.servlet.ServletException; 8import javax.servlet.annotation.WebServlet; 9import javax.servlet.http.HttpServlet; 10import javax.servlet.http.HttpServletRequest; 11import javax.servlet.http.HttpServletResponse; 12 13import model.GetQuestionListLogic; 14import model.PostQuestionLogic; 15import model.Question; 16/** 17 * Servlet implementation class Doctest 18 */ 19 20@WebServlet("/RegistQuestionServlet") 21public class RegistQuestionServlet extends HttpServlet { 22 private static final long serialVersionUID = 1L; 23 24/** 25* @see HttpServlet#doget(HttpServletRequest request, HttpServletResponse response) 26*/ 27protected void doGet(HttpServletRequest request, HttpServletResponse response) 28throws ServletException, IOException { 29//フォワード 30RequestDispatcher dispatcher = 31 request.getRequestDispatcher("/WEB-INF/jsp/QandARegist.jsp"); 32 dispatcher.forward(request, response); 33} 34 35/** 36* @see HttpServlet#dopost(HttpServletRequest request, HttpServletResponse response) 37*/ 38protected void doPost(HttpServletRequest request, HttpServletResponse response) 39throws ServletException, IOException { 40//文字コードエンコーディング 41request.setCharacterEncoding("UTF-8"); 42//リクエストパラメータ取得 43 String handle_name = request.getParameter("handle_name"); 44 String title = request.getParameter("title"); 45 String contents = request.getParameter("contents"); 46 int urgency = request.getParameter("urgency"); 47 String edit_delete_key = request.getParameter("edit_delete_key"); 48 String regist_timestamp = request.getParameter("regist_timestamp"); 49 String update_timestamp = request.getParameter("update_timestamp"); 50 51// 質問リストに質問を追加 52 Question question = new Question(handle_name, title, contents, urgency, edit_delete_key, regist_timestamp, update_timestamp); 53 PostQuestionLogic postQuestionLogic = new PostQuestionLogic(); 54 postQuestionLogic.execute(question); 55 } 56//質問リスト取得 57GetQuestionListLogic getQuestionListLogic = new GetQuestionListLogic(); 58List<Question> questionList = getQuestionListLogic.execute(); 59} 60

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

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

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

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

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

guest

回答3

0

ベストアンサー

エラーメッセージのままですね。
戻り値が stringなので、それを int(数値)に変換してあげる必要があります。

Java

1int urgency = Integer.parseInt(request.getParameter("urgency"));

とか。

投稿2020/03/24 12:40

pepperleaf

総合スコア6383

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

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

nagahi

2020/03/25 09:41

ありがとうございます。記載いただいたコードで解決できました。
guest

0

request.getParameter は String 型を返しますので int 型には入りません.

投稿2020/03/24 12:38

jimbe

総合スコア12632

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

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

nagahi

2020/03/25 09:42

ありがとうございます。そのままの意味でしたね。。解決できました。
guest

0

エラーの通りです。
ServletRequest.getParameterの返却値はStringです。
int型の変数に受け取るためにはString型から型変換してあげる必要があります。
(調べればすぐ出てくるので調べてみてください)

エラーメッセージの読み方と対処, 検索や質問の原則

投稿2020/03/24 12:38

m.ts10806

総合スコア80850

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

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

nagahi

2020/03/25 09:44

ありがとうございます。自分の調べ方が悪かったです。。無事解決できました。
m.ts10806

2020/03/25 09:54

エラーを読んでデバッグすれば大抵の初期エラーは解決できます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問