🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Java

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

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

1回答

14637閲覧

SpringBoot エラー解決方法

jampack

総合スコア10

Java

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

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

1クリップ

投稿2019/05/14 05:32

編集2019/05/18 13:59

前提・実現したいこと

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

エラーメッセージ org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [meeting_room] Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [meeting_room] Caused by: org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [meeting_room]
追記4 select meetingroo0_.room_id as room_id1_0_0_, meetingroo0_.room_name as room_nam2_0_0_ from meeting_room meetingroo0_ where meetingroo0_.room_id=? 2019-05-18 22:54:10.911 TRACE 5052 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicBinder  : binding parameter [1] as [INTEGER] - [7] 2019-05-18 22:54:11.126 ERROR 5052 --- [nio-8080-exec-1] org.thymeleaf.TemplateEngine  : [THYMELEAF][http-nio-8080-exec-1] Exception processing template "rooms/listRooms": Error resolving template [rooms/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers org.thymeleaf.exceptions.TemplateInputException: Error resolving template [rooms/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers 2019-05-18 22:54:11.136 ERROR 5052 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]  : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateInputException: Error resolving template [rooms/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers] with root cause org.thymeleaf.exceptions.TemplateInputException: Error resolving template [rooms/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers

該当のソースコード

package mrs.domain.model; import java.io.Serializable; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; @Entity public class MeetingRoom implements Serializable{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private String roomId; private String roomName; public String getroomName() { return this.roomName; } public void setroomName(String roomName) { this.roomName=roomName; } }
DROP TABLE IF EXISTS meeting_room CASCADE; DROP TABLE IF EXISTS reservable_room CASCADE; DROP TABLE IF EXISTS reservation CASCADE; DROP TABLE IF EXISTS usr CASCADE; CREATE TABLE IF NOT EXISTS meeting_room( room_id SERIAL NOT NULL, room_name VARCHAR(255) NOT NULL, PRIMARY KEY(room_id) ); CREATE TABLE IF NOT EXISTS reservation( reservation_id SERIAL NOT NULL, end_time TIME NOT NULL, start_time TIME NOT NULL, reserved_date DATE NOT NULL, room_id INT4 NOT NULL, user_id VARCHAR(255) NOT NULL, PRIMARY KEY (reservation_id) ); CREATE TABLE IF NOT EXISTS reservable_room( reserved_date DATE NOT NULL, room_id INT4 NOT NULL, PRIMARY KEY (reserved_date,room_id) ); CREATE TABLE IF NOT EXISTS usr( user_id VARCHAR(255) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL role_name VARCHAR(255) NOT NULL PRIMARY KEY (user_id) ); ALTER TABLE reservable_room DROP CONSTRAINT IF EXISTS fk_A; ALTER TABLE reservation DROP CONSTRAINT IF EXISTS fk_B; ALTER TABLE reservation DROP CONSTRAINT IF EXISTS fk_C; ALTER TABLE reservable_room ADD CONSTRAINT fk_A FOREIGN KEY (room_id) REFERENCES meeting_room; ALTER TABLE reservation ADD CONSTRAINT fk_B FOREIGN KEY (reserved_date,room_id) REFERENCES reservable_room; ALTER TABLE reservation ADD CONSTRAINT fk_C FOREIGN KEY (user_id) REFERENCES usr;
プロパティ spring.jpa.database=POSTGRESQL spring.datasource.url=jdbc:postgresql://localhost:5432/mrs spring.datasource.username=mrs spring.datasource.password=mrs spring.jpa.hibernate.ddl-auto=validate spring.jpa.properties.hibernate,format_sql=true spring.datasource.sql-script-encoding=UTF-8 logging.level.org.hibernate.SQL=DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE言語を入力
追記3 Controllerクラス package mrs.app.room; import java.time.LocalDate; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import mrs.domain.model.ReservableRoom; import mrs.domain.service.room.RoomService; @Controller @RequestMapping("rooms") public class RoomsController { @Autowired RoomService roomService; @RequestMapping(method = RequestMethod.GET) String listRooms(Model model) { LocalDate today = LocalDate.now(); List<ReservableRoom> rooms = roomService.findReservableRooms(today); model.addAttribute("date",today); model.addAttribute("rooms" , rooms); return "room/listRoom"; } @RequestMapping(path = "{date}",method =RequestMethod.GET) String listRooms( @DateTimeFormat(iso = DateTimeFormat.ISO.DATE)@PathVariable("date")LocalDate date, Model model) { List<ReservableRoom>rooms = roomService.findReservableRooms(date); model.addAttribute("rooms",rooms); return "room/ListRooms"; } }
pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>mrs</groupId> <artifactId>mrs</artifactId> <version>0.0.1-SNAPSHOT</version> <name>mrs</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>thymeleaf-extras-java8time</artifactId> <version> 3.0.4.RELEASE</version><!--$NO-MVN-MAN-VER$--> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>

試したこと

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

ここにより詳細な情報を記載してください。

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

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

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

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

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

m.ts10806

2019/05/14 06:14

エラーもコードブロックにいれてください
退会済みユーザー

退会済みユーザー

2019/05/14 06:43

アクセサ問題のきがするけど様子見をしよう
退会済みユーザー

退会済みユーザー

2019/05/15 08:48

そういえば1年以上前に同じコードの質問をみたきがするな・・・・
jampack

2019/05/15 09:15

その方もおんなじ本を使っているのでしょうか、一応私はコマンドプロンプトからデータベースに接続したのですがそもそもテーブルが作られていませんでした。上のコードはeclipseで書いているのですがそもそもテーブルが作られていない原因はなんだと考えられますか?もうかれこれ3日くらいここでとまっているので些細なことでもいいので教えてください
rubytomato

2019/05/16 12:47

質問内容に提示されているDDL(SQL)のCREATE TABLE文の構文が間違っているとおもいます。CREATE TABLE IF NOT EXISTS meeting_room { ...省略... }; と書かれていますが、正確にはCREATE TABLE IF NOT EXISTS meeting_room ( ...省略... );ではないでしょうか?
jampack

2019/05/16 13:45

確かに!と思って修正しました。これで解決できればよかったのですがまた新たなエラーに直面してしまいました。
rubytomato

2019/05/17 02:01

usrテーブルを作成するDDLにはまだ構文ミスがあります。一度PostgreSQLにログインしてすべてのSQL文が正しく実行できるか確認してください。 SQL文が正しくなってもまだ同じエラーが起きる場合は、コントローラかアプリケーションへのアクセスに問題があるかもしれませんので、それらの情報を質問内容に追記ください。
jampack

2019/05/17 08:46

追記3 本通りに書いていたといいましたが省略したクラスがありました。Converterクラスです。省略した理由ですがJPA2.2の新機能としてJava 8の日付と時間のサポートに java.time.LocalDate java.time.LocalTime java.time.LocalDateTime が含まれているのでコンバータのコーディングは必要なくなるとのことでしたので書きませんでした。ところが実際書いてみるとアプリケーションが終了し以下のような異なるエラーが出るようになりました。文字数の関係でatは省略します
jampack

2019/05/17 08:47

SQL文を入力しましたが問題なくテーブル作成、データの挿入はできました
jampack

2019/05/17 08:54

テーブル作成後アプリケーションを実行しても同じエラーでした。 コンバーターあり→アプリケーション終了 なし→WEB上でエラー
jampack

2019/05/17 09:09

なぜかはわかりませんが、プロパティファイルのデータベースをpostgresにするとmissing table meeting_room mrsにするとWEBページ上でエラーになります
jampack

2019/05/17 10:18

どうやらmrsで直接作ったテーブルが消えてなかったみたいです。すべて元に戻りました。missing tableです。
rubytomato

2019/05/18 06:05

> SQL文を入力しましたが問題なくテーブル作成、データの挿入はできました 質問内容の CREATE TABLE IF NOT EXISTS usr( ... ); 文にはまだ構文エラーがありますが、本当にこのDDLを実行してテーブルが作成できたのでしょうか? お手元の実行したSQL文と質問内容に違いがあるのであれば質問内容の訂正をお願いします。 また、テーブルがある状態ではページ表示時にエラーになるというですが、このときのエラーの詳細も追記してください。
jampack

2019/05/18 06:15

CREATE TABLEと表記され念のため¥d(テーブル一覧のコマンド)で確かめましたがテーブルusrは作成されていました。色々状況がごちゃごちゃになってしまったので現在の状況をまとめます。 最初のエラーと同じくmissing tableでテーブル自体が作成できずアプリケーションも終了するためページを検索しても出てこない。 前にwebページが表示されたのは私がコマンドプロンプトで直接うったテーブルの消し忘れで多分その影響かと思います
jampack

2019/05/18 06:33

SQL文は上記のコードどおりです。すべてのテーブルをコマンドプロンプトで作成したあとのWEBページでのエラー文は Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sat May 18 15:27:52 JST 2019 There was an unexpected error (type=Not Found, status=404). No message available
jampack

2019/05/18 06:36

eclipse上では java.lang.reflect.InvocationTargetException: null at...省略 Caused by: java.sql.SQLFeatureNotSupportedException: org.postgresql.jdbc.PgConnection.createClob() メソッドはまだ実装されていません。 at org.postgresql.Driver.notImplemented(Driver.java:688) ~[postgresql-42.2.5.jar:42.2.5] at org.postgresql.jdbc.PgConnection.createClob(PgConnection.java:1269) ~[postgresql-42.2.5.jar:42.2.5] ... 44 common frames omitted 2019-05-18 15:33:55.119  INFO 10408 --- [ main] org.hibernate.type.BasicTypeRegistry  : HHH000270: Type registration [java.util.UUID] overrides previous : org.hibernate.type.UUIDBinaryType@74ea46e2 2019-05-18 15:33:55.715  INFO 10408 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' もう追記では書ききれないようなのでここにかきます 2019-05-18 15:33:56.131  INFO 10408 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor' 2019-05-18 15:33:56.158  WARN 10408 --- [ main] aWebConfiguration$JpaWebMvcConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2019-05-18 15:33:56.307  INFO 10408 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path '' 2019-05-18 15:33:56.310  INFO 10408 --- [ main] mrs.MrsApplication  : Started MrsApplication in 3.322 seconds (JVM running for 3.935)
jampack

2019/05/18 06:42 編集

SQL文は上記のコードどおりといいましたがよくみるとこちらのコードは空白が抜けていたようなので修正しました。 だとあとコンバーターありだとWEBページも表示されずアプリケーションは終了します。エラー文は(コマンドプロンプトでテーブルを作っているにもかかわらず)missing tableです。また何の本のコードか明記していなかったのでかいておきますいておきます。 Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発 Spring FrameworkによるJavaアプリケーション 14章チュートリアル
jampack

2019/05/18 14:01

テーブル作成後http://localhost:8080/roomsにアクセスしたあとにコンソールに重要そうなエラーメッセージが追加されていたので追記しました
jampack

2019/05/18 14:19

大変申し訳ございません。前回挙げたWEBページは間違っていてただしくはこちらです。誤ってhttp://localhost:8080にアクセスしたものをあげてしまいました。 Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sat May 18 23:15:06 JST 2019 There was an unexpected error (type=Internal Server Error, status=500). Error resolving template [room/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers
guest

回答1

0

ベストアンサー

Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発 Spring FrameworkによるJavaアプリケーション

14章チュートリアル

この書籍で使用しているSpring Bootのバージョンは1.3です。それに対してご質問のプロジェクトはSpring Boot 2.1.4を使用されています。
書籍の通りにコードを書いても正常に動かないのはバージョンの違いが原因の1つだと思います。

ただ、以下の修正を行うことでアプリケーションを動かせるかもしれませんのでご確認ください。

application.properties

spring.jpa.database=POSTGRESQL spring.datasource.url=jdbc:postgresql://localhost:5432/mrs spring.datasource.username=mrs spring.datasource.password=mrs spring.jpa.hibernate.ddl-auto=validate # カンマが使われていたのでピリオドに修正 # spring.jpa.properties.hibernate,format_sql=true spring.jpa.properties.hibernate.format_sql=true spring.datasource.sql-script-encoding=UTF-8 logging.level.org.hibernate.SQL=DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # 追加 spring.datasource.initialization-mode=always spring.jpa.open-in-view=true

追加したspring.datasource.initialization-modeは、以前のバージョン(Spring Boot 1.3)ではspring.datasource.initializeという名前で、デフォルト値はtrueでした。つまりschema.sqlとdata.sqlをクラスパス上に置いておけば、アプリケーション起動時に実行されるようになっていました。
しかしバージョンが上がって新しいプロパティspring.datasource.initialization-modeのデフォルト値はembeddedになり、埋め込みデータベース(H2など)でなければschema.sqlとdata.sqlは実行されないようになりました。
値をalwaysにすると利用するデータベースの種類に関係なくschema.sqlとdata.sqlを実行するようになります。

hibernate.properties
次にhibernate.propertiesというファイルをapplication.propertiesファイルと同じ場所に作成し、下記の行を記述してください。

hibernate.jdbc.lob.non_contextual_creation=true

MeetingRoom.java
roomIdの型はStringではなくIntegerです。
また、getter/setterが無いので追加してください。

@Entity public class MeetingRoom implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer roomId; private String roomName; public Integer getRoomId() { return roomId; } public void setRoomId(Integer roomId) { this.roomId = roomId; } public String getRoomName() { return roomName; } public void setRoomName(String roomName) { this.roomName = roomName; } }

RoomService.java

質問内容にはありませんが、Spring Boot 2.0よりRepositoryのメソッドも変わっているので修正が必要です。

public class RoomService { // 省略 public MeetingRoom findMeetingRoom(Integer roomId) { // return meetingRoomRepository.findOne(roomId); // findOneメソッドはfindByIdに変わっています。 // また戻り値の型がOptionalになっているので、orElseGetでMeetingRoomかnullを返すようにしています。 return meetingRoomRepository.findById(roomId).orElseGet(null); } }

何度か指摘させてもらいましたがカンマ抜けの構文ミスが残っているので改めてご指摘します。
質問内容に記載するコードやエラーメッセージは実際のものを記述してください。でないと不要な指摘が発生して時間を無駄にしてしまいます。

CREATE TABLE IF NOT EXISTS usr ( user_id VARCHAR(255) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, /*カンマが抜けています*/ role_name VARCHAR(255) NOT NULL, /*カンマが抜けています*/ PRIMARY KEY (user_id) );

以上の修正を行えばアプリケーションが起動すると思います。
http://localhost:8080/rooms/ にアクセスして画面が表示されることをご確認ください。
上手くいけば下図の画面が表示されると思います。(data.sqlの内容によってことなると思います)
イメージ説明

最低限のコードでの動作確認なので、また別の原因で動かない(エラーが起きる)ということも十分に考えられますが、参考にしている書籍のバージョンが1.3とだいぶ古いので適宜読み替えて理解していく必要があると思います。

投稿2019/05/18 13:52

rubytomato

総合スコア1752

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

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

jampack

2019/05/18 15:05

まずはお礼が言いたいです。ここまでお付き合いいただき本当にありがとうございます。RoomService.java以外上記の通りにしたところテーブル作成はできました。ですがWEBページでは Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sat May 18 23:55:44 JST 2019 There was an unexpected error (type=Internal Server Error, status=500). Error resolving template [room/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers と表示されます。listRoomsに関係するクラスをすべて書きますのでなにか間違いがあったら指摘してください。
jampack

2019/05/18 15:06

ReservableRoomRepository.java package mrs.domain.repository.room; import java.time.LocalDate; import java.util.List; import org.springframework.data.jpa.repository.JpaRepository; import mrs.domain.model.ReservableRoom; import mrs.domain.model.ReservableRoomId; public interface ReservableRoomRepository extends JpaRepository<ReservableRoom, ReservableRoomId>{ List<ReservableRoom> findByReservableRoomId_reservedDateOrderByReservableRoomId_roomIdAsc(LocalDate resserveDate); }
jampack

2019/05/18 15:08

package mrs.domain.service.room; import java.time.LocalDate; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import mrs.domain.model.ReservableRoom; import mrs.domain.repository.room.ReservableRoomRepository; RoomService.java @Service @Transactional public class RoomService { @Autowired ReservableRoomRepository reservableRoomRepository; public List<ReservableRoom>findReservableRooms(LocalDate date){ return reservableRoomRepository.findByReservableRoomId_reservedDateOrderByReservableRoomId_roomIdAsc(date); } }
jampack

2019/05/18 15:13 編集

あとは上記のコントローラーです。もし問題がわからないようでしたら新しい本に切り替えようと思います。usrのテーブルは自分のコードではカンマが入っていたのですがこちらに乗せたほうでは書かれてませんでしたね、すいません、以後指摘があったら修正したかどうか記憶をたどるのではなくきちんと現在の自分のコードをのせるようにします。
rubytomato

2019/05/18 15:17

> Error resolving template [room/listRooms], template might not exist or might not be accessible by any of the configured Template Resolvers このエラーメッセージによればlistRoomsというテンプレートが解決できないようです。 resources/templates/room/listRooms.htmlというテンプレートファイルがあるかご確認ください。 RoomsControllerのlistRoomsメソッドでは、return "room/listRoom"; と return "room/listRooms"; と別々のテンプレートを使っていますが、これは想定通りですか?
jampack

2019/05/18 16:07 編集

すいません、上記のコードではroom/listRoomになっていましたが私のコード上ではどちらもroom/listRoomsです。resources/templates/listRooms.htmlのようにlistRoomsはつくっています。 <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"/> <title th:text="|${temporals.format(date,'yyyy/M/d')}の会議室|">2016/5/20の会議室</title> </head> <body> <h3>会議室</h3> <a th:href="@{'/room/'+${date.minusDays(1)}}">$lt;前日</a> <span th:text="|${#temporals.format(date,'yyyy/M/d')}の会議室|">2016/5/20の会議室</span> <a th:href="@{'/rooms/' + ${date.plusDays(1)}}">翌日 &gt;</a> <ul> <li th:each="room:${rooms}"> <a th:href="@{'/reservations/' + ${date} + '/' + ${room.meetingRoom.roomId}}" th:text="${room.meetingRoom.roomName}"></a> </li> </ul> </body> </html>
jampack

2019/05/18 16:03 編集

ここの見つからないというエラーは/room/listRoom.htmlと作らなかったことでした。コントローラーをroom/listRoom→listRoomに変更したところWEBページは 会議室 $lt;前日 2019/5/19の会議室 翌日 > となりました。だいぶ進みました!ですがなかにデータがはいっていません
rubytomato

2019/05/18 16:01

<title th:text="|${temporals.format(date,'yyyy/M/d')}の会議室|">2016/5/20の会議室</title> を <title th:text="|${#temporals.format(date, 'yyyy/M/d')}の会議室|">2016/5/20の会議室</title> と修正してください。 temporals.formatの前の#が抜けています。
jampack

2019/05/18 16:09 編集

ありがとうございます。私もさきほど気づき修正したところ、データがはいっっていないページが表示されました。 src/main/resourcesフォルダ deta.sql INSERT INTO meeting_room(room_name) VALUES ('新木場'); INSERT INTO meeting_room(room_name) VALUES ('豊州'); INSERT INTO meeting_room(room_name) VALUES ('月島'); INSERT INTO meeting_room(room_name) VALUES ('新富町'); INSERT INTO meeting_room(room_name) VALUES ('銀座一丁目'); INSERT INTO meeting_room(room_name) VALUES ('有楽町'); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE,1); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE+1,1); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE-1,1); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE,7); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE+1,7); INSERT INTO reservable_room(reserved_date, room_id) VALUES(CURRENT_DATE-1,7); INSERT INTO usr (user_id,first_name,last_name,password,role_name) VALUES ('taro-yamada','太郎','山田','kk','USER'); INSERT INTO usr (user_id,first_name,last_name,password,role_name) VALUES ('aaaa','Aaa','Aaa','kk','USER'); INSERT INTO usr (user_id,first_name,last_name,password,role_name) VALUES ('bbbb','Bbb','Bbb','kk','USER'); INSERT INTO usr (user_id,first_name,last_name,password,role_name) VALUES ('cccc','Ccc','Ccc','kk','ADMIN');
rubytomato

2019/05/18 16:15

初期データを投入するsqlファイルの名前は deta.sql になっているのですか? であれば、data.sql に直してください。
jampack

2019/05/18 16:21

ありがとうございます!!無事表示されました!あなたに出会えて本当に良かったです!
rubytomato

2019/05/18 16:35

解決されたようで良かったです。ですがその書籍で学習を続けると別の新しい問題に悩まされるかもしれません。 早いうちにSpring Boot 2.xを扱っている書籍に切り替えられることをお勧めします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問