Класс с @RequestMapping никогда не используется - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь написать REST-сервер, используя этот пример видео (осторожно, русская речь). В этом примере, когда лектор пишет @RequestMapping над классом контроллера, класс становится используемым. Но в моем случае класс контроллера «никогда не используется», и когда я запускаю tomcat server с моим контроллером и захожу на страницу http://localhost:8000/app/remind/get, я получаю эту ошибку: Нет сопоставления для GET / app / remind / получить

Это код моего контроллера:

@Controller
@RequestMapping("/reminder")
public class ReminderController {

    @RequestMapping(value = "/get", method = RequestMethod.GET)
    @ResponseBody
    public String getReminder(){
        return "my reminder";
    }
}

А это мой WebConfig.java

@Configuration 
@EnableWebMvc
@ComponentScan("com.fillooow.remindme.server")
public class WebConfig extends WebMvcConfigurerAdapter {
}

Итак, вы можете объяснить, почему мой класс "никогда не используется" и что я пропускаю?

EDIT Моя проблема была неправильным контекстом в файле конфигурации ("/" вместо "/ app")

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Предложение: попробуйте @GetMapping; убедитесь, что вы используете правильный URL:

@Controller
@RequestMapping("/reminder")
public class ReminderController {

    @GetMapping(value = "/get")
    @ResponseBody
    public String getReminder(){
        return "my reminder";
    }
}

... и ...

http://localhost:8000/app/reminder/get

ТАКЖЕ: я не уверен насчет вашего корневого контекста ("приложение") или вашего порта ("8000" против "8080").

ВОЗМОЖНАЯ АЛЬТЕРНАТИВА:

http://localhost:8080/reminder/get

ДОПОЛНИТЕЛЬНОЕ ПРЕДЛОЖЕНИЕ: включить отладку

logging.level.org.springframework=DEBUG
0 голосов
/ 30 октября 2018

Попробуйте конечную точку, как показано ниже

 http://localhost:8000/reminder/get
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...