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

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

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

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

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

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

Eclipse

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

Q&A

0回答

895閲覧

mavenプロジェクト。アプリまでの絶対パスが明白なのにEclipseの実行パスが違ってしまい到達できず404が出る。

onoko

総合スコア41

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

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

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

Eclipse

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

0グッド

1クリップ

投稿2021/10/29 12:22

編集2021/10/30 11:55

Eclipseを使ってjavaでmavenのWebプログラムを作成中です。まずコントローラーのサーブレットに実行命令を送りそのdoPostでビューであるトップ画面を送り出す構成です。
コントローラーBooks.javaまでのパスは、books21c(プロジェクト名)/src/main/jaav/src/controller/Booksとなっています。ところがEclipseの実行機能で実行しHTTPステータス404が出たメッセージでは、Books.javaを探すパスは次のようになって見つけられないのです。
メッセージ:要求されたリソース[books21c/servlet/src.controller.Books]は利用できません。
機械が実際の絶対パスとは違ったservletというパスをなぜか挿入して目標のBooksを見いだせなくなっているように見えます。このservletというこちらでは指定していないパスは何でしょう。またservletの部分を実際のパスに変えてBooksに至るための工夫を教えてください。
またこの方法でいいのかわかりませんが、Eclipsenの実行パスを絶対パスに編集して目的を達成しようとして、プロジェクト(右クリック)>プロパティー>実行/デバッグ設定>クラスで編集しようともしました。しかしプロジェクト名の下に何も表示されず、用例も見当たらずかないませんでした。もしこれを使うのならその使い方もおしらせください。
よろしくお願いします。

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

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

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

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

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

jimbe

2021/10/29 16:16 編集

※以下は古い記憶に因るものなので間違っているかもしれません。 サーブレットの実行は通常の(コマンドライン的な)実行とは異なり、サーブレットコンテナ(恐らく tomcat )によって実行されます。 tomcat は URL から HTML を返すべきなのかサーブレットを実行すべきなのかを判断する為に(デフォルト設定として) URL に "servlet" が含まれる場合にサーブレットを実行し、それ以外は HTML を返すとしています。 恐らくお作りになったクラスがきちんと(サーブレットとして) tomcat の管理下に配置(または認識)されていないため、 URL から判断されるクラスが見つからずエラーとなっているのではないでしょうか。 Eclipse によるサーブレット開発の方法・(サーブレットコンテナを含めた)必要な設定等をもう一度確認されては如何でしょう。
onoko

2021/10/30 10:24

books21c/src/main/java/src/controller/Books.javaは誤ったパス構成でした。 正してbooks21c/src/main/java/controller/Books.javaと作り直しました。 ご指摘を参考にして、コントローラー部であるBooks.javaのパッケージ名称controllerをservletに変えてみました。私の持っているjavaの教本の用例にもコントローラー部のパッケージ名はservletとなっているので、もしやtomcatでは説明なしの暗黙の前提としてコントローラー部の名前はservletに決まっているのかとも想像して。 しかし実行してみると同じエラーで依然として実行パスに/servlet/が入り込みます。 HTTPステータス404-見つかりません。 タイプ ステータスレポート メッセージ 要求されたリソース[books21c/servlet/servlet.Books]は利用できません。 このプロジェクトはもとは動的webプロジェクトとして作成して、その時はEclipseの実行機能で画面が出ていました。しかしjavaプロジェクトをHerokuにデプロイするための解説にmavenに変換してから行う方法しか載っていず、mavenにしてEclipse上で動作確認すると、上述のエラーが出て、プロジェクトの可否が分からなくなるのです。
jimbe

2021/10/30 10:39

少々説明が足りなかったですね。 サーブレットコンテナがサーブレットか HTML かを判断するための URL 内の "servlet" は、サーブレットのパッケージ名とは関係ありません。 コンテナは URL とサーブレットのマッピングを持っていて、ある URL はサーブレットで、またある URL は HTML で…と判断します。が、その設定が行われていない場合は、デフォルトとして URL に "servlet" という部分が含まれていたらサーブレットと判断しているものと思います。 申し訳ありませんが Heroku も maven も分かりませんのでその変換に関する情報は持ち合わせておりません。参照されている「mavenに変換してから行う方法」が何なのかも分かりませんし、恐らくその方法によって何か設定したりを行われたと思いますが、ご質問本文からは私にはその具体的な情報が分かりません。 お役に立てずすいません。
onoko

2021/10/30 11:23

私の結局mavenに関してなどという特殊でしょうもない質問にお骨折りおつきあいいただきありがとうございました。これはあきらめ、他のmavenの適用法があるようなのでそっちを試してみようと思います。
jimbe

2021/10/30 11:29

ご質問のタイトルに Heroku や maven といった文字を入れておくと、詳しい方の目に留まるかもしれません。それらのタグがあればそのタグを設定すればより見つかり易いと思います。
onoko

2021/10/30 11:49

御親切にいたみいります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問