質問するログイン新規登録

質問編集履歴

3

@ControllerAdvice付クラスのコード掲載

2024/08/19 06:24

投稿

ikigamikita
ikigamikita

スコア20

title CHANGED
File without changes
body CHANGED
@@ -50,7 +50,57 @@
50
50
  }
51
51
 
52
52
  ```
53
+
53
54
  ```java
55
+ package com.example.aspect;
56
+
57
+ import org.springframework.dao.DataAccessException;
58
+ import org.springframework.http.HttpStatus;
59
+ import org.springframework.ui.Model;
60
+ import org.springframework.web.bind.annotation.ControllerAdvice;
61
+ import org.springframework.web.bind.annotation.ExceptionHandler;
62
+
63
+ @ControllerAdvice
64
+ public class GlobalControllAdvice {
65
+
66
+ // データベース関連の例外処理
67
+ @ExceptionHandler(DataAccessException.class)
68
+ public String dataAccessxExceptionHandler(DataAccessException e,Model model) {
69
+
70
+ // 空文字をセット
71
+ model.addAttribute("error","");
72
+ // メッセージをModelに登録
73
+ model.addAttribute("message","SignupControllerで例外が発生しました");
74
+
75
+ // HTTPのエラーコード(500)をModelに登録
76
+ model.addAttribute("status",HttpStatus.INTERNAL_SERVER_ERROR);
77
+
78
+ return "error";
79
+
80
+ }
81
+
82
+ @ExceptionHandler(Exception.class)
83
+ public String exceptionHandler(Exception e,Model model) {
84
+
85
+ // 空文字をセット
86
+ model.addAttribute("error","");
87
+ // メッセージをModelに登録
88
+ model.addAttribute("message","SignupControllerで例外が発生しました");
89
+
90
+ // HTTPのエラーコード(500)をModelに登録
91
+ model.addAttribute("status",HttpStatus.INTERNAL_SERVER_ERROR);
92
+
93
+ return "error";
94
+
95
+ }
96
+
97
+
98
+
99
+ }
100
+
101
+ ```
102
+
103
+ ```java
54
104
  package com.example.controller;
55
105
 
56
106
  import java.util.Locale;

2

補足

2024/08/19 05:38

投稿

ikigamikita
ikigamikita

スコア20

title CHANGED
File without changes
body CHANGED
@@ -8,9 +8,9 @@
8
8
  「SpringBoot解体新書」という本を参考にアプリを作っています。Securityの章に入り勉強していましたが、本のコードが古いらしく、
9
9
  Spring Security 6.0 にバージョンアップしたためAIでSecurityFilterChainのコードを書きました
10
10
  しかし、共通エラー画面が出ずに下記のようなエラー画面が出てしまいます。
11
- web Securityの設定をするまでは普通にerror.htmlは表示されていました。
11
+ web Securityの設定をするまでは普通にerror.htmlは表示されていました。
12
12
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-08-19/320357d1-64d5-4500-a2c6-6d825ba2fd38.png)
13
- お手数ですが、何卒よろしくお願いします、
13
+ 何が原因でしょうか?お手数ですが、何卒よろしくお願いします、
14
14
 
15
15
  ### 発生している問題・エラーメッセージ
16
16
 

1

リンクを踏みやすいように改行した

2024/08/19 05:37

投稿

ikigamikita
ikigamikita

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,7 @@
1
1
  ### 実現したいこと
2
2
 
3
- http://localhost:8080/user/listにアクセスしたら出るはずの共通エラー画面error.htmlを出すようにしたい
3
+ http://localhost:8080/user/list
4
+ にアクセスしたら出るはずの共通エラー画面error.htmlを出すようにしたい
4
5
 
5
6
  ### 前提
6
7