【问题标题】:How to use tomcat7 to run servlets如何使用tomcat7运行servlet
【发布时间】:2011-07-28 03:17:38
【问题描述】:

我是 servlet 的新手。我正在使用 tomcat7,我想运行一个 servlet。 我已经修改了 web.xml 并放入了 WEB-INF 目录。 内容是

<servlet>
    <servlet-name>asg1</servlet-name>
    <servlet-class>asg1</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>asg1</servlet-name>
    <url-pattern>asg1</url-pattern>
</servlet-mapping>

我的应用程序名称是 servlet。我没有使用任何 .war 文件。 我创建了“servlet”目录。所以我的 servlet DIR 是:

  • /servlet/WEB-INF/classes
  • /servlet/WEB-INF/web.xml
  • /servlet/asg1.html

我已将此 servlet DIR 放入 {tomcat-asInstall}/webapps 我正在使用 url http://localhost:8080/servlet

访问它

但无法访问。 tomcat提供的其他应用程序运行得很好,但为什么我的servlet不行?

【问题讨论】:

    标签: tomcat servlets


    【解决方案1】:

    您需要访问http://localhost:8080/servlet/asg1。但首先将模式更改为/asg1。事实上,在 tomcat 7(和 servlet 3)中,您可以跳过 XML 并使用 @WebServlet 来映射 servlet。

    【讨论】:

      【解决方案2】:

      您可能希望将 URL 模式更改为类似的内容。

      1. 编译 servlet 并复制其类文件(.class)

      2. 我建议您在根文件夹的“webapps”中为您的类文件创建一个名为“classes”的文件夹

      3. 将类文件粘贴到该文件夹​​中并打开 XML 描述符文件,然后执行以下操作:

        <servlet>
          <servlet-name>asg1</servlet-name>
          <servlet-class>.class file name</servlet-class>
        </servlet>
        <servlet-mapping>
          <servlet-name>asg1</servlet-name>
          <url-pattern>/classes/asg1</url-pattern>
        </servlet-mapping>
        

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 2013-10-31
        • 2017-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-04
        • 1970-01-01
        • 2016-12-29
        • 1970-01-01
        相关资源
        最近更新 更多