
--- src/main/java/com/takensoft/cms/accesCtrl/service/SystemAccesCtrlService.java
+++ src/main/java/com/takensoft/cms/accesCtrl/service/SystemAccesCtrlService.java
... | ... | @@ -23,5 +23,5 @@ |
23 | 23 |
* |
24 | 24 |
* 접근 제어 조회(시스템용 - 라우터) |
25 | 25 |
*/ |
26 |
- public boolean routerAccesCheck(Map params, HttpServletRequest req) throws Exception; |
|
26 |
+ public boolean routerAccesCheck(Map params, HttpServletRequest req); |
|
27 | 27 |
} |
--- src/main/java/com/takensoft/common/exception/CustomCodeDuplicationException.java
+++ src/main/java/com/takensoft/common/exception/CustomCodeDuplicationException.java
... | ... | @@ -1,11 +1,11 @@ |
1 | 1 |
package com.takensoft.common.exception; |
2 | 2 |
|
3 | 3 |
/** |
4 |
- * @author takensoft |
|
4 |
+ * @author 하석형 |
|
5 | 5 |
* @since 2025.03.12 |
6 | 6 |
* @modification |
7 | 7 |
* since | author | description |
8 |
- * 2025.03.12 | 하 석 형 | 최초 등록 |
|
8 |
+ * 2025.03.12 | 하석형 | 최초 등록 |
|
9 | 9 |
* |
10 | 10 |
* RuntimeException - 실행 중 발생하는 예외를 처리하는 기본 클래스 |
11 | 11 |
* |
--- src/main/java/com/takensoft/common/exception/CustomDataDuplicationException.java
+++ src/main/java/com/takensoft/common/exception/CustomDataDuplicationException.java
... | ... | @@ -1,11 +1,11 @@ |
1 | 1 |
package com.takensoft.common.exception; |
2 | 2 |
|
3 | 3 |
/** |
4 |
- * @author takensoft |
|
4 |
+ * @author 하석형 |
|
5 | 5 |
* @since 2025.03.12 |
6 | 6 |
* @modification |
7 | 7 |
* since | author | description |
8 |
- * 2025.03.12 | 하 석 형 | 최초 등록 |
|
8 |
+ * 2025.03.12 | 하석형 | 최초 등록 |
|
9 | 9 |
* |
10 | 10 |
* RuntimeException - 실행 중 발생하는 예외를 처리하는 기본 클래스 |
11 | 11 |
* |
+++ src/main/java/com/takensoft/common/exception/CustomFileUploadFailException.java
... | ... | @@ -0,0 +1,26 @@ |
1 | +package com.takensoft.common.exception; | |
2 | + | |
3 | +/** | |
4 | + * @author 하석형 | |
5 | + * @since 2025.03.20 | |
6 | + * @modification | |
7 | + * since | author | description | |
8 | + * 2025.03.20 | 하석형 | 최초 등록 | |
9 | + * | |
10 | + * RuntimeException - 실행 중 발생하는 예외를 처리하는 기본 클래스 | |
11 | + * | |
12 | + * 파일 업로드 실패 시 발생하는 예외 | |
13 | + */ | |
14 | +public class CustomFileUploadFailException extends RuntimeException { | |
15 | + | |
16 | + public CustomFileUploadFailException() { | |
17 | + } | |
18 | + | |
19 | + public CustomFileUploadFailException(String message) { | |
20 | + super(message); | |
21 | + } | |
22 | + | |
23 | + public CustomFileUploadFailException(String message, Throwable cause) { | |
24 | + super(message, cause); | |
25 | + } | |
26 | +}(파일 끝에 줄바꿈 문자 없음) |
--- src/main/java/com/takensoft/common/exception/GlobalExceptionHandler.java
+++ src/main/java/com/takensoft/common/exception/GlobalExceptionHandler.java
... | ... | @@ -4,6 +4,7 @@ |
4 | 4 |
import com.takensoft.common.util.ResponseUtil; |
5 | 5 |
import lombok.RequiredArgsConstructor; |
6 | 6 |
import lombok.extern.slf4j.Slf4j; |
7 |
+import org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException; |
|
7 | 8 |
import org.springframework.dao.DataAccessException; |
8 | 9 |
import org.springframework.http.HttpStatus; |
9 | 10 |
import org.springframework.http.ResponseEntity; |
... | ... | @@ -21,6 +22,8 @@ |
21 | 22 |
* @modification |
22 | 23 |
* since | author | description |
23 | 24 |
* 2025.01.22 | takensoft | 최초 등록 |
25 |
+ * 2025.03.12 | 하석형 | handleCustomCodeDuplicationException, handleCustomDataDuplicationException 추가 |
|
26 |
+ * 2025.03.20 | 하석형 | handleFileSizeLimitExceededException, CustomFileUploadFailException 추가 |
|
24 | 27 |
* |
25 | 28 |
* 스프링 MVC 컨트롤러에서 발생하는 예외를 처리하는 공통 클래스 |
26 | 29 |
*/ |
... | ... | @@ -268,6 +271,30 @@ |
268 | 271 |
} |
269 | 272 |
|
270 | 273 |
/** |
274 |
+ * @param fsle - FileSizeLimitExceededException 예외 객체 |
|
275 |
+ * @return FileSizeLimitExceededException 대한 HTTP 응답 |
|
276 |
+ * |
|
277 |
+ * FileSizeLimitExceededException 발생한 경우 |
|
278 |
+ */ |
|
279 |
+ @ExceptionHandler(FileSizeLimitExceededException.class) |
|
280 |
+ public ResponseEntity<?> handleFileSizeLimitExceededException(FileSizeLimitExceededException fsle) { |
|
281 |
+ logError(fsle); |
|
282 |
+ return resUtil.errorRes(MessageCode.COMMON_PAYLOAD_TOO_LARGE); |
|
283 |
+ } |
|
284 |
+ |
|
285 |
+ /** |
|
286 |
+ * @param cfufe - CustomFileUploadFailException 예외 객체 |
|
287 |
+ * @return CustomFileUploadFailException 대한 HTTP 응답 |
|
288 |
+ * |
|
289 |
+ * CustomFileUploadFailException 발생한 경우 |
|
290 |
+ */ |
|
291 |
+ @ExceptionHandler(CustomFileUploadFailException.class) |
|
292 |
+ public ResponseEntity<?> handleCustomFileUploadFailException(CustomFileUploadFailException cfufe) { |
|
293 |
+ logError(cfufe); |
|
294 |
+ return resUtil.errorRes(MessageCode.FILE_UPLOAD_FAIL); |
|
295 |
+ } |
|
296 |
+ |
|
297 |
+ /** |
|
271 | 298 |
* @param e - Exception 예외 객체 |
272 | 299 |
* @return 기타 예외에 대한 HTTP 응답 |
273 | 300 |
* |
--- src/main/java/com/takensoft/common/message/MessageCode.java
+++ src/main/java/com/takensoft/common/message/MessageCode.java
... | ... | @@ -60,7 +60,10 @@ |
60 | 60 |
LOGIN_ACCOUNT_DISABLED("user.login.account_disabled", HttpStatus.FORBIDDEN), // 계정 비활성화 |
61 | 61 |
LOGIN_ACCOUNT_EXPIRED("user.login.account_expired", HttpStatus.FORBIDDEN), // 계정 만료 |
62 | 62 |
LOGIN_CREDENTIALS_EXPIRED("user.login.credentials_expired", HttpStatus.FORBIDDEN), // 비밀번호 유효기간 만료 |
63 |
- LOGOUT_SUCCESS("user.logout.success", HttpStatus.OK); // 로그아웃 성공 |
|
63 |
+ LOGOUT_SUCCESS("user.logout.success", HttpStatus.OK), // 로그아웃 성공 |
|
64 |
+ |
|
65 |
+ // 파일 관련 |
|
66 |
+ FILE_UPLOAD_FAIL("file.upload_fail", HttpStatus.INTERNAL_SERVER_ERROR); // 파일 업로드 실패 |
|
64 | 67 |
|
65 | 68 |
private final String messageKey; // 메시지 |
66 | 69 |
private final HttpStatus status; // HTTP 상태 |
--- src/main/resources/message/messages_en.yml
+++ src/main/resources/message/messages_en.yml
... | ... | @@ -52,4 +52,8 @@ |
52 | 52 |
account_expired: "Account has expired." |
53 | 53 |
credentials_expired: "Password has expired." |
54 | 54 |
logout: |
55 |
- success: "You have been logged out."(파일 끝에 줄바꿈 문자 없음) |
|
55 |
+ success: "You have been logged out." |
|
56 |
+ |
|
57 |
+# 파일 관련 |
|
58 |
+file: |
|
59 |
+ upload_fail: "File upload failed."(파일 끝에 줄바꿈 문자 없음) |
--- src/main/resources/message/messages_ko.yml
+++ src/main/resources/message/messages_ko.yml
... | ... | @@ -53,3 +53,7 @@ |
53 | 53 |
credentials_expired: "계정 비밀번호 유효기간이 만료되었습니다." |
54 | 54 |
logout: |
55 | 55 |
success: "로그아웃 되었습니다." |
56 |
+ |
|
57 |
+# 파일 관련 |
|
58 |
+file: |
|
59 |
+ upload_fail: "파일 업로드에 실패했습니다."(파일 끝에 줄바꿈 문자 없음) |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?