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

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

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

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

サーブレット

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

Eclipse

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

servlet

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

Q&A

解決済

2回答

44602閲覧

eclipseで「インポートされたjavax.servletは見つかりません」が解決できない

umum

総合スコア2

Java

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

サーブレット

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

Eclipse

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

servlet

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

0グッド

1クリップ

投稿2021/03/23 06:43

編集2021/03/23 08:08

前提・実現したいこと

Java初心者です。

「Javaバイブルシリーズ Webアプリケーション構築の教科書」という本に従って、
Javaのインストールやeclipseの設定をしたのですが、
サーブレットの新規作成をすると
「インポートされたjavax.servletは見つかりません」と出てしまいます。

調べるとビルドパスの設定で外部jarファイルの追加から
servletをのパスを指定するよう出てきますが、解決できません。

解決方法がわかる方がいらっしゃいましたら、教えていただけると嬉しいです。

バージョン

Java :version "16" 2021-03-16
eclipse : Eclipse IDE 2021‑03
(Eclipse IDE for Enterprise Java and Web Developers)
Tomcat : v10.0

ここまでに実施した内容

1.下記をインストール
・JDK
・Tomcat
・MySQL
・Eclipse

2.eclipseで下記を設定
・DBViewerのインストール
・「テキストファイルのエンコード」を「UTF-8」に設定
・「コンパイラー」「エラー/警告」の
「serialVersionUIDなしのシリアライズ可能クラス」を「無視」に設定
・「コンパイラー」「エラー/警告」の「@Override注釈の欠落」を「警告」に設定
・「Web」「JSPファイル」のエンコードを「ISO 10646/Unicode(UTF-8)」に設定
・「サーバー」「ランタイム環境」に新規追加し、
「新規サーバー・ランタイム環境」ウィンドウでTomcat10.0を設定
・上記に続いて
「新規サーバー・ランタイム環境」ウィンドウの「JRE」欄に「jdk-16」を設定
・「コードスタイル」「フォーマッター」を設定

3.ファイルから動的EWebプロジェクトを新規作成したのち、ファイルから新規サーブレットを作成

ビルドパスの設定状況とエラー文言

![イメージ説明]
イメージ説明
イメージ説明
イメージ説明
イメージ説明

気になること

参考書と違っているのはバージョンにかかわるところのみなので、
そこが問題なのかと考えているのですが、対応方法がわかりません…。
エラー文言の画像で2つ目に出ているファセット・プロジェクトの問題、についても、
ファセットの設定はJavaのところが「16」、コンパイラーの設定は「15」(16が選択できない)となっているので、この辺りも気になります。
また、Tomcatのバージョンも10なので、どこかの設定と食い違っている可能性もあるかと考えています。

初歩的な質問かもしれないのですが、よろしくお願いいたします。

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

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

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

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

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

K_3578

2021/03/23 07:37

クラスパス下のApache Tomcat v10.0(Apache Tomcat v10.0)に 「servlet-api.jar」ってのあります?
umum

2021/03/23 07:47

見ていただいてありがとうございます! はい。ありました。画像追加させていただきます。
K_3578

2021/03/23 08:02 編集

成程、Eclipseのサーバータブに「ローカル・ホストのTomcat10」みたいなのあります?
umum

2021/03/23 08:07

サーバータブには「どのサーバーにも関連していません」とあります。 ランタイムのところにはTomcat10の表示があります。 また画像追加させていただきます。
guest

回答2

0

Tomcatが登録されてないっぽいので、ワークスペース下のサーバータブを選択すると
自分のには書いてないですが「使用可能なサーバーがありません。」みたいな文言があると思うので
イメージ説明

それを押すと「新規サーバーの定義」ってのが出てくると思います。
んで今回はTomcat10なんでそれを選択、次に「追加および除去」が出てきたら追加する動的Webプロジェクトを追加したら完了だと思います。

これで上手くいかなかったらまた質問して下さい。
一応参考サイト

投稿2021/03/23 08:30

K_3578

総合スコア1282

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

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

umum

2021/03/23 09:16

質問させていただいたエラー文自体は別の方が回答してくださったimport文の変更で消えて、そのあと教えていただいたサーバーの設定が必要になりました! 大変助かりました。ご確認いただきありがとうございました!
K_3578

2021/03/23 09:18

申し訳ない、自分が前のバージョンを使い続けていたせいで気づけてなかったですね。 自分としても内容思い出せたので、こちらこそありがとうございました。
guest

0

ベストアンサー

tomcat 10では、パッケージ名がjavax.servletからjakarta.servletに変わったみたいです。
http://tomcat.apache.org/migration-10.html

import文を修正すれば、コンパイルエラーは解消すると思います。

java

1import jakarta.servlet.ServletException; 2import jakarta.servlet.annotation.WebServlet; 3import jakarta.servlet.http.HttpServlet; 4import jakarta.servlet.http.HttpServletRequest; 5import jakarta.servlet.http.HttpServletResponse;

投稿2021/03/23 08:18

gpsoft

総合スコア1323

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

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

umum

2021/03/23 09:16

教えていただいた方法でエラーが消えました。 大変助かりました。ご確認いただきありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問