Ошибка 404 в проекте Spring Maven - PullRequest
0 голосов
/ 03 июня 2018

enter image description here Я новичок в Spring и пытаюсь разработать одно небольшое приложение, используя аннотацию Spring с Maven.Но я получаю ** «Запрошенный ресурс недоступен». ** Я понимаю, что сервер не может найти запрошенный ресурс.Но я не могу решить ее, поэтому, пожалуйста, помогите мне в этом.

Ниже приведены структура и код моего проекта: -

SpringRootConfig.java
package com.capp.config;
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.context.annotation.ComponentScan;
@Configurable
@ComponentScan( basePackages = {"com.capp"})
public class SpringRootConfig {


}

    package com.capp.config;

    import org.springframework.beans.factory.annotation.Configurable;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.web.servlet.ViewResolver;
    import org.springframework.web.servlet.config.annotation.EnableWebMvc;
    import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
    import org.springframework.web.servlet.view.InternalResourceViewResolver;
    import org.springframework.web.servlet.view.JstlView;

    @SuppressWarnings("deprecation")
    @Configurable
    @ComponentScan( basePackages = {"com.capp"})
    @EnableWebMvc
    public class SpringWebConfig extends WebMvcConfigurerAdapter {


        public void addResourceHandlers(ResourceHandlerRegistry registry) {


        }

        @Bean
        public ViewResolver viewResolver() {

            InternalResourceViewResolver vr =new InternalResourceViewResolver();
            vr.setViewClass(JstlView.class);
            vr.setPrefix("/WEB-INF/view/");
            vr.setSuffix(".jsp");
            return vr;
        }
    }
    ContactAppDispatcherServletIntializer.java
    package com.capp.config;

    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;

    import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

    public class ContactAppDispatcherServletIntializer extends AbstractAnnotationConfigDispatcherServletInitializer {

        @Override
        protected Class<?>[] getRootConfigClasses() {
            return new Class[] {SpringRootConfig.class};
        }

        @Override
        protected Class<?>[] getServletConfigClasses() {
            // TODO Auto-generated method stub
            return new Class[] {SpringRootConfig.class};
        }

        @Override
        protected String[] getServletMappings() {
            // TODO Auto-generated method stub
            return new String[] {"/"};
        }

        @Override
        public void onStartup(ServletContext servletContext) throws ServletException {
            // TODO Auto-generated method stub
            super.onStartup(servletContext);
        }




    }
TestController.java    
package com.capp.controller;

    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    @Controller
    public class TestController {

        @RequestMapping(value="/test/hello")
        public String helloWorld() {

            return "hello";
        }

    }

Когда я запускаю приложение с http://localhost:8080/SpringContactApp/test/hello не удалось найти файл hello.jsp, находящийся в папке WEB-INF. enter image description here

1 Ответ

0 голосов
/ 03 июня 2018

Я предполагаю, что JSP находится непосредственно в папке WEB-INF.Если дело обстоит именно так, создайте подкаталог 'view' и переместите туда JSP.

В преобразователе представлений вы устанавливаете префикс "/ WEB-INF / view /", ваши ресурсы представления должны находиться вэто место.

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