【问题标题】:Can I use servlet api 3.0 and jetty 8?我可以使用 servlet api 3.0 和 jetty 8 吗?
【发布时间】:2026-01-28 14:40:02
【问题描述】:

我想在 Jetty 8 中使用 3.0 servlet-api。目前在我的 web.xml 中定义了 2.4 servlet-api。并在 webdefault.xml 2.5 servlet-api 中定义。其他人设置了这个,所以他们很可能做错了什么。我实际使用的是哪个 servlet-api 版本? 2.4 还是 2.5?我的类路径中已经有 3.0。我需要在 web.xml 和/或 webdefault.xml 中进行哪些更改才能使其正常工作?

提前谢谢你。

【问题讨论】:

    标签: servlets servlet-3.0 jetty-8


    【解决方案1】:

    您通常不自己提供 Servlet API。这通常由目标 servlet 容器本身提供。 Servlet 3.0 兼容容器的示例有 Tomcat 7.xGlassfish 3.xJBoss AS 6.x/7.x 和,是的,Jetty 8.x

    您只需声明web.xml<web-app> 根元素以符合目标容器支持的最高版本。

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app 
        xmlns="http://java.sun.com/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
        version="3.0">
    
    </web-app>
    

    另见:

    【讨论】:

    • 小提示:有时设置metadata-complete="false" 会有所帮助。 (我必须第一次在 Jboss 7 中。)
    最近更新 更多