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

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

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

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

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

Q&A

解決済

1回答

7056閲覧

Spring Boot "Thymeleaf 404エラー"

shaw

総合スコア209

Java

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

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

1グッド

2クリップ

投稿2018/01/02 14:37

編集2018/01/03 03:11

Spring の勉強で、API 系は作成できたのですが、thymeleaf を使って画面を使おうとすると 404 がでてきます。

デバッグで追うと、IndexController の model.addAttribute("now", new Date().toString()); までたどり着くことは確認しましたが 404 になる原因、対策がわかりません。

###発生している問題・エラーメッセージ
ブラウザから localhost:8080/ にアクセスすると WhiteLabel になります。

###コントローラー

java

1package com.example.demo; 2 3import java.util.Date; 4 5import org.springframework.stereotype.Controller; 6import org.springframework.ui.Model; 7import org.springframework.web.bind.annotation.RequestMapping; 8import org.springframework.web.bind.annotation.RequestMethod; 9 10@Controller 11public class Index { 12 @RequestMapping(value = "/", method = RequestMethod.GET) 13 public String index(Model model) { 14 model.addAttribute("now", new Date().toString()); 15 return "index"; 16 } 17} 18

###フロント

html

1<!DOCTYPE HTML> 2<html xmlns:th="http://www.thymeleaf.org"> 3<head> 4 <title>index page</title> 5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 6 <meta charset="UTF-8" /> 7</head> 8<body> 9 <p>Hello</p> 10 <p>Now <span th:text="${now}">foobar</span></p> 11</body> 12</html>

###依存関係

xml

1<?xml version="1.0" encoding="UTF-8"?> 2<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 6 <groupId>com.example</groupId> 7 <artifactId>demo20180102</artifactId> 8 <version>0.0.1-SNAPSHOT</version> 9 <packaging>jar</packaging> 10 11 <name>demo20180102</name> 12 <description>Demo project for Spring Boot</description> 13 14 <parent> 15 <groupId>org.springframework.boot</groupId> 16 <artifactId>spring-boot-starter-parent</artifactId> 17 <version>1.5.9.RELEASE</version> 18 <relativePath/> <!-- lookup parent from repository --> 19 </parent> 20 21 <properties> 22 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 23 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 24 <java.version>1.8</java.version> 25 </properties> 26 27 <dependencies> 28 <dependency> 29 <groupId>org.springframework.boot</groupId> 30 <artifactId>spring-boot-starter-thymeleaf</artifactId> 31 </dependency> 32 <dependency> 33 <groupId>org.springframework.boot</groupId> 34 <artifactId>spring-boot-starter-web</artifactId> 35 </dependency> 36 37 <dependency> 38 <groupId>org.springframework.boot</groupId> 39 <artifactId>spring-boot-starter-test</artifactId> 40 <scope>test</scope> 41 </dependency> 42 </dependencies> 43 44 <build> 45 <plugins> 46 <plugin> 47 <groupId>org.springframework.boot</groupId> 48 <artifactId>spring-boot-maven-plugin</artifactId> 49 </plugin> 50 </plugins> 51 </build> 52 53 54</project> 55

構成

 イメージ説明

お力を貸していただけると助かります。
よろしくお願いいたします。

追記

![イメージ説明]

yuji38kwmt👍を押しています

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2018/01/02 16:25

application.properties の設定が環境と間違えてるんじゃないのかしら?
退会済みユーザー

退会済みユーザー

2018/01/02 16:27

まあよくわからん場合は デバッグモードで起動しましょう
shaw

2018/01/02 16:31

ありがとうございます。ただ、今回 thymeleaf の使い方を知りたかったのが目的で、DB接続やデプロイなどの予定がなくプロパティファイルには何も記載しておりません。
shaw

2018/01/03 01:15 編集

デバッグすると、追記部分の画像の状態になります。 「class ファイルのソースが読めない」は、404 と関係ないと考えているのですが、認識が間違っているでしょうか。 ご教授願います。
退会済みユーザー

退会済みユーザー

2018/01/03 01:18

そっちのデバッグじゃないww application.properties に debug=true を追記
shaw

2018/01/03 01:42 編集

失礼しました。ご指摘の方法でやってみました。 コンソールに DEBUG レベルのものが表示され、調べているのですがやはりわかりません・・・。 追記に情報を記載いたしました。 再度、ご確認頂けますでしょうか。
shaw

2018/01/03 01:48

ちなみに、友人が他PC で試してくれたところ同じソースで動いたそうです。このような状況だと睨むべき場所を教えていただけると助かります。
退会済みユーザー

退会済みユーザー

2018/01/03 02:06

もうそれだと ${user.home}/.m2/repository/ 以下の jar がおかしいきがするんだがそれだと起動しないはずだし
退会済みユーザー

退会済みユーザー

2018/01/03 02:07

ブラウザを変えてレッツトライしてみてください(クロームでよく起きる現象のきがする)
shaw

2018/01/03 02:50

chrome, safari で試しましたが、両方とも変わらず whitelabel の 404 になりました。
shaw

2018/01/03 02:57

value 部分を、/index に変え localhost:8080/index でアクセスしたところ 500 に変わりました。ログを追記いたします。
退会済みユーザー

退会済みユーザー

2018/01/03 02:58

index は設定してないんだから当たり前でしょそれ・・
shaw

2018/01/03 03:10

そうでした。他の value にしても 404 のままでした。
guest

回答1

0

自己解決

根本的な解決にはなっていませんが、対処できたので共有いたします。

.m2 配下の削除と maven の更新を繰り返したらなんとかうまくいきました。

みなさまありがとうございました。

投稿2018/01/18 11:46

shaw

総合スコア209

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

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

kunikazutayama

2019/02/13 01:55

自分も同じ症状で困っていましたがmavenの更新で解決しました。情報提供ありがとう
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問