Файл JSP и CSS не загружается в браузер Java WebApp - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть следующая структура папок для моего проекта Maven WebApp

src
 +-----main
        +-----java
        |       +-----com
        |               +------controller
        |                          +-----HomeController.java
        |
        +-----resources
        +-----webapp
                 +-----resources
                 |          +-----css
                 |                 +-----home.css
                 +-----WEB-INF
                         +-----jsp
                         |      +------home.jsp
                         +-----eLibrary-servlet.xml
                         +-----web.xml

web.xml:

<servlet>
    <servlet-name>eLibrary</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>eLibrary</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

<display-name>eLibrary</display-name>

eLibrary-servlet.xml:

<mvc:annotation-driven />

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEF-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

<mvc:resources location="/resources/" mapping="/resources/**" />

HomeController.java:

@Controller
    public class HomeController {
        @RequestMapping("/")
        public String getHomePage() {
            return "home";
        }
    }

И в моем home.jsp я пытаюсь получить доступ к файлу CSS, используя ${pageContext.request.contextPath}/resources/css/home.css

Но ни мой JSP-файл (то есть home.jsp)) ни CSS-файл (то есть home.css) не загружается в браузер, и я получаю HTTP-статус 404 при получении http://localhost:8080/eLibrary/ с сообщением

/ eLibrary / WEF-INF /jsp / home.jsp

и описание

Исходный сервер не нашел текущее представление для целевого ресурса или не хочет раскрывать, что он существует.

Ответы [ 3 ]

0 голосов
/ 18 сентября 2018

Ошибка в настройке Spring DispatcherServlet.Вам нужно указать свой eLibrary-servlet.xml в web.xml .Необходимо переставить файл web.xml, как указано в приведенной ниже ссылке.

https://docs.spring.io/spring-flex/docs/1.0.x/reference/html/ch02s02.html

<servlet>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/eLibrary-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

Надеюсь, это полезно.

0 голосов
/ 18 сентября 2018

В вашем elibrary-servlet.xml

есть ошибка опечатки
<mvc:annotation-driven />

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

<mvc:resources location="/resources/" mapping="/resources/**" />
0 голосов
/ 18 сентября 2018

У вас есть тип, здесь /WEF-INF/jsp/

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEF-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

изменить на /WEB-INF/jsp/

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...