如何将jsp-servlet迁移到spring-boot?

时间:2016-12-09 10:01:21

标签: java spring jsp servlets spring-boot

我正致力于将标准的基于Servlet的(web.xml)应用程序迁移到spring-boot应用程序。

我们不使用spring-mvc,而且web.xml配置超过700行。我没有找到任何加载web.xml的解决方案。

我试图迁移我拥有的所有servlet /过滤器并遇到servlet问题而没有实际的servlet类:

<servlet>
    <servlet-name>index</servlet-name>
    <jsp-file>/index.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>index</servlet-name>
    <url-pattern>/index</url-pattern>
</servlet-mapping>

无法从文件中创建ServletRegistrationBeanJspServlet

假设我有其他servlet映射,如何迁移这些Servlet?

2 个答案:

答案 0 :(得分:1)

使用控制器

    @SpringBootApplication
    public class SpringBootWebApplication extends SpringBootServletInitializer {

        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(SpringBootWebApplication.class);
        }

        public static void main(String[] args) throws Exception {
            SpringApplication.run(SpringBootWebApplication.class, args);
        }

    }

@Controller
public class IndexController {
    @RequestMapping("/index")
    public String index(Model model) {
        model.addAttribute("name", name);
        return "index";
    }
}

在application.properties

spring.mvc.view.prefix: /
spring.mvc.view.suffix: .jsp

答案 1 :(得分:0)

您需要扩展SpringBootServletInitializer类并使用它来代替web.xml。您可以通过它完全按照您的需要映射所有内容。

这将由Spring Boot自动获取。