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

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

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

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

Eclipse

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

8352閲覧

EclipseでHTMLファイルを作成し、サーバーで実行すると「HTTPステータス 404 」エラーが出てしまう

mayuphoo

総合スコア13

Java

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

Eclipse

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/06/09 02:37

前提・実現したいこと

現在、Eclipseを用いて初めてWebアプリケーションを作成しようとしています。

サーブレットファイルを用意し、しっかり動作していることを確認してから、HTMLファイルをlocalhostのサーバー上で表示させる作業に入っています。

具体的には、エクスプローラからHTMLファイルを右クリックをし、実行ボタンを押したところ、サーバーに404エラーが出てきてしまい、つまづいてしまっています。

どなたかご教授いただけると、幸いです。
宜しくお願いいたします。

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

HTTPステータス 404 – 見つかりません。 タイプ ステータスレポート 説明 オリジンサーバーは、ターゲットリソースの現在の表現を見つけられなかったか、またはそれが存在することを開示するつもりはありません。 Apache Tomcat/9.0.44

該当のソースコード

#####Sample.Servlet.java

import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/SampleServlet") public class SampleServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.getWriter().append("Hello"); } }

#####sample.html

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>sample</title> </head> <body> hello </body> </html>

#####エクスプローラのフォルダ内の構成
リンク内容

試したこと

・HTMLファイルの場所が原因かと考え、scrフォルダ内でいろいろ移動させてみましたが、変化がありませんでした。
・HTMLファイルの記述が間違っているかもしれないと思い、記述した内容を確認しましたが、こちらも変化なしでした。

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

Eclipseは、pleidesのFullEditionをインストールして使用しています。
Tomcat/9.0.44

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

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

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

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

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

m.ts10806

2021/06/09 02:49

実行してみたURLとプロジェクトのコンテキストパスを追記してください
mayuphoo

2021/06/09 03:03

``` http://localhost:8080/SchooSample/WEB-INF/sample.html ``` というURLがエラー画面の上部に表示されているので、こちらのURLで実行していると思います。 コンテキストパスというものを今知りまして、まだコンテキストパスの設定は行っていないです。 HTMLファイルの内容を、とりあえずサーバーに表示させたいのですが、、 HTMLファイルを右クリックして、「サーバで実行」を押すだけではうまくいかないのでしょうか?
guest

回答1

0

ベストアンサー

WEB-INF/下はWEBのアクセス時には参照できません。「sample.html」はWEB-INF/ディレクトリの下に置くのではなく、WEB-INF/と同じ階層に置いてください。つまり、src/main/webapps/sample.htmlです。

そうした上で、URL「http://localhost:8080/SchooSample/sample.html」でアクセスしてください。

プロジェクトに新規のファイルを追加する場合、「Project Explorer」で該当のプロジェクトを選択し、右クリック→「New」→「HTML File」で作成すると、適切な位置に作成されます。

投稿2021/06/09 03:28

編集2021/06/09 03:30
dodox86

総合スコア9256

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

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

mayuphoo

2021/06/09 04:12

頂いたアドバイス通りに実行してみたところ、うまくいきました。 ありがとうございます。 WEB-INFディレクトリについて、詳しく調べてみました。 このディレクトリは外部から直接アクセスできないのですね! 今回は手動でファイルの作成を行っていたので、次回からはメニュー画面からファイルを作成する技を使うようにしてみます。^^ 迅速で的確な回答をいただき、本当にありがとうございました(^^)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問