【问题标题】:Java web.xml <servlet-class> tag and web.xml Specification/DocumentationJava web.xml <servlet-class> 标签和 web.xml 规范/文档
【发布时间】:2015-09-07 19:02:50
【问题描述】:

谁能告诉我 web.xml 中 servlet-class 标签的用途是什么?例如,我目前正在使用 tomcat 8,并且正在使用 restful jersey 框架。那么为什么你把这个类: org.glassfish.jersey.servlet.ServletContainer 放在 servlet-class 标记中,而不是 org.apache.catalina.servlets.DefaultServlet 用于 tomcat? 也有人能告诉我在哪里可以找到 java ee web.xml 规范/文档吗?

谢谢

【问题讨论】:

    标签: java tomcat jersey web.xml


    【解决方案1】:

    部署描述符是 Java Servlet 规范的一部分。

    您可以在此处找到 3.1 规范 JSR340

    https://www.jcp.org/en/jsr/detail?id=340查看最终版本

    servlet-class 提供了这个的完全限定的 Java 类名 端点实现。您指定 serlvet 类名,例如com.stackoverflow.myweb.LoginSerlvet 这可以映射到像 /login 这样的 url。这使得在 web 应用程序、html 等中更容易使用。每当请求 /login 时,LoginServlet 都会运行(取决于 HTTP 类型,如果它是 GET、POST 等)。还取决于您可能需要添加使用的外部库的 Servlet。例如,在您的情况下,您需要 jersey 库。还要检查 web.xml 以设置 servlet(servlet-class)并检查 servlet-mapping。为什么需要添加 ServletContainer 而不是 DefaultServlet 是因为您想使用 Rest Jersey,并且每当您调用映射的 url(例如 /rest/* 它将运行球衣 servlet)。我认为您有点困惑,因为您认为 servlet-class 是在您的应用程序中托管所有编写的 servlet 的类,但事实并非如此。

    做一些关于如何构建 Java servlet 应用程序的教程,你很快就会更好地理解它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-10
      • 1970-01-01
      • 1970-01-01
      • 2017-08-04
      • 2023-03-29
      • 2014-01-03
      • 2015-03-01
      • 2012-12-08
      相关资源
      最近更新 更多