인프런 커뮤니티 질문&답변

k1m1님의 프로필 이미지
k1m1

작성한 질문수

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

다국어 처리를 위한 Internationalization 구현 방법

수업 그대로 따라했는데 404오류가 발생합니다.

작성

·

224

0

안녕하세요 다국어 처리 수업 중에 수업 그대로 작성했는데 이러한 오류가 발생하게 됩니다.
뭐 때문에 이러한 오류가 나는지 모르겠습니다..

답변 2

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

말씀하신, 다국어 테스트를 위한 hello-world-internationalized 를 요청 시 404 오류가 발생하는 것은 말 그대로 해당 Resource를 찾을 수 없다는 오류이기 때문에, hello-world-internationalized가 구현 된 HelloWorldController 클래스에 오류가 없는지, RequestMapping 또는 GetMappinng 등의 설정이 잘 되었는지 확인해 보시면 좋을 것 같습니다. HelloWorldContoller의 다른 메소드드른 정상 사용이 되면서, hello-world-internationalized 메소드에만 문제가 있는 것인지도 확인해 보시면 좋을 것 같습니다.

@RestController
public class HelloWorldController {
    private MessageSource messageSource;

    public HelloWorldController(MessageSource messageSource) {
        this.messageSource = messageSource;
    }

    @GetMapping(path = "/hello-world")
    public String helloWorld() {
        return "Hello World";
    }

    @GetMapping(path = "/hello-world-bean")
    public HelloWorldBean helloWorldBean() {
        return new HelloWorldBean("Hello Wolrd");
    }

    // hello-world-bean/path-variable/kennet
    @GetMapping(path = "/hello-world-bean/path-variable/{name}")
    public HelloWorldBean helloWorldBean(@PathVariable String name) {
        return new HelloWorldBean(String.format("Hello World, %s ", name));
    }

    @GetMapping(path = "/hello-world-internationalized")
    public String helloWorldInternationalized(
            @RequestHeader(name="Accept-Language", required=false)  Locale locale) {
        return messageSource.getMessage("greeting.message", null, locale);
    }
}

위 내용 확인 시에도 오류 해결이 되지 않으시면, 아래 공유된 소스로 한번 실행해 보시기 바랍니다.

https://github.com/joneconsulting/new-my-restful-service

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.

k1m1님, 요청하신 API 경로가 서버에서 찾을 수 없어 발생하는 404 오류로 보입니다.

이 경우, 몇 가지 확인해볼 사항이 있습니다:
1. 서버 측에서 해당 경로(/hello-world-internationalized)로 요청을 처리할 수 있는 @RestController의 @RequestMapping 설정이 제대로 되어있는지 확인하세요.
2. application.propertiesapplication.yml 파일에 다국어 설정이 올바르게 적용되었는지 검토해보세요.
3. 프로젝트 내에 URI와 일치하는 스프링 컨트롤러 메소드가 존재하는지 확인하세요.

이 오류는 주로 서버 측에서 요청받은 리소스의 경로를 찾지 못했을 때 발생합니다. 스프링 부트의 @RestController 주석 및 관련 매핑 설정을 다시 검토하시길 바랍니다. 만약 다국어 처리 기능이 포함된 API 경로 설정에 문제가 없다면, 서버가 올바르게 구동되고 있는지 확인해주세요.

추가 문제 해결에 필요하신 정보가 있다면, 아래의 문서도 참조하실 수 있습니다:
- Spring Boot에서 JSON REST 서비스 작성 방법: Spring Boot Reference Documentation

감사합니다.

k1m1님의 프로필 이미지
k1m1

작성한 질문수

질문하기