質問するログイン新規登録
JSP

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

Eclipse

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

servlet

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

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

Q&A

1回答

194閲覧

servlet(tomcat8)で文字化け。

takakakaka13579

総合スコア0

JSP

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

Eclipse

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

servlet

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

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

0グッド

0クリップ

投稿2024/01/18 17:32

編集2024/01/20 07:37

0

0

実現したいこと

ここに実現したいことを箇条書きで書いてください。

現在eclipseでwebアプリを作成しています。

自分の環境はWindwos11,Eclipse,Tomcat8(Mavenプロジェクトで作成)という構成です。
悩んでいる事は、JSPからPostで送られてくるパラメーターが文字化けを起こしていることです。
この文字化けを直したいのです。

前提

具体的には「あいうえお」が「あいうえã」になっちゃいます。
たぶん「ISO-8859-1」かな?とも思うのですが。。。正確にはわかりません。

文字化けの解消をしないことにはパスワードの照合とか出来ないので、困っています。

エラーメッセージ

エラー等は出ていません。

試したこと

最初にFilterクラスを作り、doFilter()メソッドで、

request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8")
chain.doFilter(request, response);

としてみたのですが、ダメでした。
そこでTomcatのserver.xmlかなと思い、connectorタグのところを

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxParameterCount="1000" URIEncoding="UTF-8"/>

とURIEncodingのところを変更してみたのですが、また何も変化せず、ダメでした(useBodyEncodingForURI=trueも試したのですが、これもダメ)
それ以外には、コードの中で

request.setCharacterEncoding("UTF-8");

などもgetParameter()の前に書いて試しましたが上手くいきませんでした。

追記:CentOSでこのWebアプリを実行してみたのですが、同様にダメでした(もしかするとserver.xmlではない?)

何か解決方法があれば良ければ教えていただきたいです。他に試すべきことがあれば。。

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

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

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

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

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

guest

回答1

0

承知いたしました。Eclipseで作成されたWebアプリケーションにおけるJSPからPOST送信されたパラメータの文字化け問題について、解決策を以下に箇条書きで示します。

問題点の整理
環境: Windows 11, Eclipse, Tomcat 8 (Mavenプロジェクト)
現象: JSPからPOST送信されたパラメータが文字化けする (例: "あいうえお" → "あいうえう")
文字コード: おそらくISO-8859-1
エラーメッセージ: エラーは出ていない
試したことと結果
Filterクラス: request.setCharacterEncoding("UTF-8") と response.setContentType("text/html; charset=UTF-8") を設定 → 効果なし
Tomcat server.xml: <Connector URIEncoding="UTF-8"> を設定 → 効果なし (useBodyEncodingForURI=true も試したが効果なし)
getParameter() 前: request.setCharacterEncoding("UTF-8") を設定 → 効果なし
CentOSでの実行: 同様に文字化けが発生 → server.xmlの問題ではない可能性
考えられる原因と解決策
JSPファイルの文字コード:
JSPファイル自体の文字コードがUTF-8になっているか確認してください。
Eclipseの設定でJSPファイルのデフォルト文字コードがUTF-8になっているか確認してください。
JSPファイルの先頭に以下の記述を追加してください。
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

投稿2025/02/27 06:33

glori923

総合スコア22

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問