【WEBシステム開発】第6章動作確認のエラーについて | ITプログラミング基礎科Q&A | 受講者用Q&Aフォーラム

通知
すべてクリア

【WEBシステム開発】第6章動作確認のエラーについて

   RSS

0
Topic starter

表題につきまして、ご教授お願いいたします。

「第3節 レコードの検索」「第2項 詳細ページの作成」箇所になります。

「templates」フォルダに「inquiry.html」を作成し、動作確認を行いましたが、
問い合わせ一覧の表示はされますが、詳細ボタンをクリックするとエラー表示が出てきてしまいます。
エラーは「inquiry.html」箇所みたいなんですが、エラー場所が特定ができません。

登録コードは全て添付させていただきました。
恐れ入りますが、ご確認をいただきご教授いただけると幸いです。

よろしくお願いいたします。

1件の回答
0

ご質問頂きありがとうございます。
また詳細なエラーも共有頂きありがとうございました。拝見させていただきました。

まず、エラー内容ですが
n error happened during template parsing (template: "class path resource
[templates/inquiry.html]")
との記載がありましたので、テンプレート(inquiry.html)内容の解析中にエラーが発生していることがわかります。

またエラー内容読み進めていくと
Caused by:
org.springframework.expression.spel.SpelEvaluationException: EL1008E:
Property or field 'contents' cannot be found on object of type
'jp.winschool.spring.sample06.Inquiry' - maybe not public or not valid?
との記述があり、contentsフィールドがInquiryクラスの中から見つけられなかったというエラー内容が記載されています。

おそらくLombokの設定がされていない、もしくは何かしらが原因でうまく反映できていない状態と思われます。そのためcontentsフィールドの中身が確認できない、ということがエラーの直接の原因のようです。
添付頂いたファイル拝見しましたが、Inquiry.javaの記述でゲッターセッターを記述されていることを確認しています。
これはLombokの設定と@Dataのアノテーションの設定が問題なく出来ているのであれば、不要な記述です。

現時点でエラーが解消できそうな修正は以下になります。
・STSで該当プロジェクトを選択し右クリック->「Spring」->「スターターの編集」でLombokにチェックが入っているかの確認
・STSで該当プロジェクトを選択し右クリック->「Spring」->「プロジェクトの更新」でsample06にチェックが入っていることを確認してOKボタンをクリック
・上記対応でも解消しない場合、再度プロジェクトを作成しなおして頂く(同じ名前だとエラーで作成できないのでsample06_1などに変える)
・contentsのゲッターが作成されていればエラーが解消されるので、
public Integer getContents() {
return contents;
}

public void setContents(Integer contents) {
this.contents = contents;
}
をinquiry.javaに追記頂くことでもエラーの解消は可能だと思います。

設定関連の修正や確認が必要に思われるため、長文での回答になってしまい申し訳ありません。
不明な点や疑問点などございましたら、返信、もしくはメンター面談のご利用もぜひご検討ください。
宜しくお願い致します。

タイトルとURLをコピーしました