Невозможно отобразить index.html в jax rs с весенней загрузкой

Я пытаюсь создать простое приложение с jax rs, springboot, angular.

Я поместил index.html в статическую папку, но при нажатии на URL-адрес localhost:8080/index.html или localhost:8080 он выдает ошибку 404 not found через пользовательский обработчик исключений. Я добавил index.html в список приветственных файлов.

У меня есть класс контроллера, но я не написал никакого конкретного метода для его обработки.

Также я хочу отобразить конкретную страницу ошибки с подробностями сообщения.

Определенно я что-то упускаю, но не получаю никакого указателя, чтобы найти это. Пожалуйста помоги.

Нужно ли для этого явно настраивать web.xml?


person Rajarshi    schedule 01.01.2019    source источник
comment
stackoverflow.com/a/29670751/2587435   -  person Paul Samsotha    schedule 01.01.2019
comment
@ Пол Самсота, я новичок, поэтому на самом деле не слишком много знаю об этих конфигурациях, хотя я следил, но не помог. Итак, я удалил файл web.xml и настроил Springboot. Я могу зарегистрировать, что он обнаруживает индексную страницу, но при нажатии на URL-адрес он перенаправляется на мой собственный обработчик исключений и выдает ошибку 404. Как я видел некоторые комментарии, Springboot автоматически находит эти статические страницы и обслуживает их. Я не уверен, поскольку использую jax rs с springboot, поэтому, возможно, мне нужно сделать что-то еще.   -  person Rajarshi    schedule 03.01.2019
comment
У вас есть GitHub? Если да, то не могли бы вы опубликовать ссылку на репозиторий? Я могу смотреть на это.   -  person Paul Samsotha    schedule 03.01.2019
comment
Вы следовали указаниям по ссылке? И есть ли у вас зависимость в ответе ниже?   -  person Paul Samsotha    schedule 03.01.2019
comment
Да, все зависимости есть. Я посмотрю, смогу ли я загрузить его на github, и поделюсь ссылкой.   -  person Rajarshi    schedule 03.01.2019


Ответы (2)


Добавлять

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

В вашем файле pom.xml весенняя загрузка автоматически настроит все остальное.

person Itsik Mauyhas    schedule 01.01.2019

Я знаю, что это старше, но чтобы расширить ответ Ицика, я нашел этот ответ через этот другой ответ, чтобы очень помочь в объяснении этого.

Подводя итог, если вы хотите иметь возможность обслуживать resources/static/index.html И использовать JAX-RS/jersey для конечных точек API, включите как spring-boot-start-web, так и spring-boot-starter-jersey. В вашем JerseyConfig добавьте @ApplicationPath("/api") или любой другой подпуть, по которому вы хотите, чтобы все ваши конечные точки jax-rs rest находились под ним. Тогда вы сможете получить лучшее из обоих миров.

person TraumaER    schedule 20.09.2020