【发布时间】:2016-11-17 19:11:46
【问题描述】:
我用 Spring mvc 3.0.9 开发了一些 rest 服务。在某些情况下,我有一个例外。这取决于我的 spring 版本使用 Servlet 3.0 api(我的应用程序服务器是 jboss eap 5.1)。与 Servlet 2.5 兼容的最新 spring mvc 版本是什么?谢谢。
【问题讨论】:
标签: spring spring-mvc servlets servlet-2.5
我用 Spring mvc 3.0.9 开发了一些 rest 服务。在某些情况下,我有一个例外。这取决于我的 spring 版本使用 Servlet 3.0 api(我的应用程序服务器是 jboss eap 5.1)。与 Servlet 2.5 兼容的最新 spring mvc 版本是什么?谢谢。
【问题讨论】:
标签: spring spring-mvc servlets servlet-2.5
Spring 3.2 应该与 Servlet 2.5 API 一起使用。
只有 Spring 4.0 需要 Serlvet 3.0:
请参考此官方documentation 了解更多信息。
Spring Framework 4.0 中的 3 个新特性和增强功能)
3.4 Java EE 6 和 7
Java EE 版本 6 或更高版本现在被视为 Spring 的基线 框架 4,具有 JPA 2.0 和 Servlet 3.0 规范 特别相关。
【讨论】:
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletResponse.getHeader(Ljava/lang/String;)Ljava/lang/String; at org.springframework.web.servlet.FrameworkServlet.doOptions(FrameworkServlet.java:865)
Spring 4.0 与 Servlet 2.5 一起使用。
查看文档:(https://docs.spring.io/spring/docs/4.3.14.RELEASE/spring-framework-reference/htmlsingle/)
3.4 Java EE 6 和 7
Java EE 版本 6 或更高版本现在被视为 Spring 的基线 框架 4,具有 JPA 2.0 和 Servlet 3.0 规范 特别相关。为了与 Google App 保持兼容 引擎和较旧的应用服务器,可以部署一个 Spring 4 应用程序进入 Servlet 2.5 环境。然而,Servlet 强烈建议使用 3.0+,并且是 Spring 的测试和模拟包的先决条件,用于在开发环境中进行测试设置。
3.7 一般网络改进
部署到 Servlet 2.5 服务器仍然是一种选择,但 Spring Framework 4.0 现在主要关注 Servlet 3.0+ 环境。 如果您使用的是 Spring MVC 测试框架,则需要确保 Servlet 3.0 兼容的 JAR 在您的测试类路径中。
【讨论】: