Spring MVC: не удается подключиться к службе отдыха - PullRequest
0 голосов
/ 04 мая 2018

Написали spring controller Get метод и пытались вызвать его с почтальоном, но получили ошибку

Could not get any response
There was an error connecting to https://localhost:8081/MyPortal/shared?video0=14&video1=15.

Даже когда я пытаюсь отладить, вызов не передается методу контроллера. Не уверен, что происходит.

Вот код контроллера:

@Controller
public class SharedLinkController {

@Autowired
VideoService videoService;

@RequestMapping("/shared")
public  ModelAndView getSharedVideo(HttpServletRequest request, HttpServletResponse response,
        @RequestParam(value="video0", required=false) Long video0,
        @RequestParam(value="video1", required=false) Long video1,
        @RequestParam(value="video2", required=false) Long video2,
        @RequestParam(value="video3", required=false) Long video3){

    List<Lab> videos = new ArrayList<Lab>();

        // some processing with video0, video1 etc....

    ModelAndView model = new ModelAndView("index");
    model.addObject("videos", videos);
    return model;

}

}

И вот как я пытаюсь вызвать API:

https://localhost:8081/MyPortal/shared?video0=14&video1=15

Я не пытаюсь сделать это RestController, так как мне нужно перенаправить вызов на веб-страницу. Что-то не так с кодом?

Пожалуйста, предложите.

Ответы [ 3 ]

0 голосов
/ 04 мая 2018

Предлагаю проверить ваш URL и имя вашего просмотра.

Вы пытаетесь подключить URL: подключение к http://localhost:8081/yourPortal/shared?video0=14&video1=15

@Controller
public class SharedLinkController {

   @Autowired
   VideoService videoService;

   @RequestMapping("/shared")
   public ModelAndView getSharedVideo(ModelAndView mav,
        @RequestParam(value="video0", required=false) Long video0,
        @RequestParam(value="video1", required=false) Long video1,
        @RequestParam(value="video2", required=false) Long video2,
        @RequestParam(value="video3", required=false) Long video3){

        List<Lab> videos = new ArrayList<Lab>();
        // ...

        mav.addObject("videos", videos);    
        mav.setViewName("index");

        return mav;
    }
}
0 голосов
/ 04 мая 2018

Вам нужно установить контекст для вашего весеннего загрузочного приложения, попробуйте установить

server.context-path=/MyPortal

Таким образом, вы можете определить корневой контекст для вашего приложения как

HTTP: локальный: 8081 / MyPortal /

0 голосов
/ 04 мая 2018

Есть ли у вас класс, который сканирует базовые пакеты и регистрирует ваш контроллер как компонент, как показано ниже?

@SpringBootApplication(scanBasePackages= "se.yourpackage.src")
@EnableAutoConfiguration
public class Application {
public static void main(String[] args) {

        SpringApplication.run(Application.class, args);

    }

Не берите в голову RestController, но вам нужно добавить отображение запроса

@RequestMapping("/MyPortal")
public class SharedLinkController {

Вам также может понадобиться добавить путь к файлам просмотра в вашем файле с именем

application.properties

например:

spring.mvc.view.prefix=/WEB-INF/view/
spring.mvc.view.suffix=.jsp
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...