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

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

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

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

HTML

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

Spring Boot

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

Q&A

解決済

1回答

1494閲覧

画面遷移が上手くいかないです。

senas.tt

総合スコア2

Java

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

HTML

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

Spring Boot

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

0グッド

0クリップ

投稿2020/08/19 11:06

編集2020/08/19 11:16

前提・実現したいこと

Spring Bootを使って、簡単な銭湯めぐりのWeb日記帳を制作しています。
情報を表示する画面(show.html)から更新する画面(update.html)へと遷移したいのですが、
どうも上手くいかず、エラー表示になってしまいます。
show.htmlとupdate.html、コントローラーをチェックして頂きたいです。

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

Failed to complete request: org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "'/update/'+e.id" (template: "show" - line 14, col 4) Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "'/update/'+e.id" (template: "show" - line 14, col 4)] with root cause

該当のソースコード

html

1<!DOCTYPE html> 2<html xmlns:th="http://www.thymeleaf.org"> 3<head> 4<meta charset="UTF-8"> 5</head> 6<body> 7<div th:object="${form}"> 8<p th:text="*{'施設名:'+name}"></p> 9<p th:text="*{'都県:'+location}"></p> 10<p th:text="*{'ジャンル:'+genre}"></p> 11<p th:text="*{'評価:'+reputation}"></p> 12<p th:text="*{'メモ:'+memo}"></p> 13</div> 14<a th:href="${'/update/'+e.id}">更新</a> 15<a th:href="@{'/'}">トップへ</a> 16</body> 17</html>

html

1<!DOCTYPE html> 2<html xmlns:th="http://www.thymeleaf.org"> 3<head> 4<meta charset="UTF-8"> 5<style type="text/css"> 6body { 7 font-family: monospace; 8} 9 10textarea { 11 vertical-align: middle 12} 13</style> 14<title>更新</title> 15</head> 16<body> 17 <form th:action="@{/insert}" th:object="${form}" method="post"> 18 19 <h3>施設名</h3> 20 <input type="text" name="name" th:value="*{name}" /><br> 21 <h3>場所</h3> 22 <input type="radio" name="location" th:value="東京都" />東京都<br> 23 <input type="radio" name="location" th:value="神奈川県" />神奈川県<br> 24 <input type="radio" name="location" th:value="埼玉県" />埼玉<br> 25 <input type="radio" name="location" th:value="千葉県" />千葉県<br> 26 <input type="radio" name="location" th:value="茨城県" />茨城県<br> 27 <input type="radio" name="location" th:value="群馬県"/>群馬県<br> 28 <input type="radio" name="location" th:value="栃木県" />栃木県<br> 29 30 <h3>ジャンル</h3> 31 <input type="checkbox" name="genre" th:value="近場" />近場<br> 32 <input type="checkbox" name="genre" th:value="遠出" />遠出<br> 33 <input type="checkbox" name="genre" th:value="" /><br> 34 <input type="checkbox" name="genre" th:value="電車" />電車<br> 35 <input type="checkbox" name="genre" th:value="大人数" />大人数<br> 36 <input type="checkbox" name="genre" th:value="個人" />個人<br> 37 38 <h3>評価</h3> 39 <input type="radio" name="reputation" th:value="3" />&#x1f60d;<br> 40 <input type="radio" name="reputation" th:value="2" />&#x1f642;<br> 41 <input type="radio" name="reputation" th:value="1" />&#x1f622;<br> 42 <br> 43 <h3>メモ</h3> 44 <textarea name="memo" th:text="*{memo}" cols="30" rows="5" 45 maxlength="400" placeholder="感想を記入"></textarea> 46 <input type="hidden" name="id" th:value="*{id}"/> 47 <br /> <a th:href="@{'/'}">トップへ</a> <input type="submit" value="更新する" /> 48 </form> 49</body> 50</html>

java

1package com.example.demo; 2 3import java.util.List; 4import java.util.Optional; 5 6import org.springframework.beans.factory.annotation.Autowired; 7import org.springframework.stereotype.Controller; 8import org.springframework.transaction.annotation.Transactional; 9import org.springframework.web.bind.annotation.ModelAttribute; 10import org.springframework.web.bind.annotation.PathVariable; 11import org.springframework.web.bind.annotation.RequestMapping; 12import org.springframework.web.servlet.ModelAndView; 13 14@Controller 15public class OfuroController { 16 @Autowired 17 OfuroRepository repository; 18 19 @RequestMapping(value = "/") 20 public ModelAndView index(ModelAndView mv) { 21 mv.setViewName("index"); 22 return mv; 23 } 24 25 @RequestMapping("/write") 26 public ModelAndView write(@ModelAttribute("form") OfuroEntity entity, ModelAndView mv) { 27 mv.setViewName("write"); 28 return mv; 29 } 30 31 @RequestMapping(value = "/insert") 32 @Transactional(readOnly = false) 33 public ModelAndView insert(@ModelAttribute("form") OfuroEntity entity, ModelAndView mv) { 34 repository.saveAndFlush(entity); 35 return new ModelAndView("redirect:/list"); 36 } 37 38 @RequestMapping(value = "/list") 39 public ModelAndView list(ModelAndView mv) { 40 mv.setViewName("list"); 41 List<OfuroEntity> list = repository.findAll(); 42 mv.addObject("list", list); 43 return mv; 44 } 45 46 @RequestMapping(value = "/show/{id}") 47 public ModelAndView show(@ModelAttribute OfuroEntity entity, @PathVariable Integer id, ModelAndView mv) { 48 mv.setViewName("show"); 49 Optional<OfuroEntity> show = repository.findById(id); 50 mv.addObject("form", show.get()); 51 return mv; 52 } 53 @RequestMapping(value="/update/{id}") 54 public ModelAndView update( 55 @ModelAttribute OfuroEntity entity, 56 @PathVariable Integer id, ModelAndView mv) { 57 Optional<OfuroEntity>show=repository.findById(id); 58 mv.addObject("form", show.get()); 59 mv.setViewName("update"); 60 return mv; 61 } 62}

試したこと

何度も自分なりに書き換えましたが、他の場所もエラーになる一方です。

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

Spring Boot,HTML,CSSを使う課題の一部です。

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

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

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

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

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

guest

回答1

0

ベストアンサー

コード見た感じe.idではなくidとなるのでは。
eをなんのつもりでつけたのか意図が不明なので、勘ですけど。

投稿2020/08/19 11:13

m.ts10806

総合スコア80859

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

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

senas.tt

2020/08/19 11:31

プログラミングを始めて間もない大の初心者なので、お恥ずかしい質問をしてしまい申し訳ありません。事前に渡された例を見ながら進めておりましたので、なぜeが付くのかなども分からない状態でした。おかげ様で無事に解決いたしました。ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問