尝试设置 tomcat 以使用 servlet

Trying to setup tomcat to use servlets

我正在按照 Java All in one for Dummies 第 3 版中的说明进行操作

我下载了 tomcat 并按照第 6 步所说的所有步骤进行了设置。 "Modify the web.xml file to enable the invoker servlet" 它说找到调用者的代码行,然后对它们进行注释。我目前在 web.xml 文件中搜索调用,但没有任何结果……我应该自己编写调用程序吗?或取消注释另一行?(这本书已有 4 年历史,可能已经过时)或者根本不做任何更改?

仅供参考,这是我的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>IPNListener</display-name>
 <servlet>
        <servlet-name>PaypalListenerServlet</servlet-name> //your servlet name
        <servlet-class>com.paypal.ipn.PaypalListenerServlet</servlet-class>// your actual java class
    </servlet>
    <servlet-mapping>
        <servlet-name>PaypalListenerServlet</servlet-name>
        <url-pattern>/*</url-pattern>//pattern of your calling url
    </servlet-mapping>
</web-app>

您还可以查看 here 以了解此 web.xml 文件

我刚刚快速浏览了一下这本书,在第 407 页上,有些行您必须取消注释 or/else 如果不存在,请添加。

来自本书;

<!--
     <servlet>
         <servlet-name>invoker</servlet-name>
         <servlet-class>
           org.apache.catalina.servlets.InvokerServlet
         </servlet-class>
         <init-param>
             <param-name>debug</param-name>
             <param-value>0</param-value>
         </init-param>
         <load-on-startup>2</load-on-startup>
     </servlet>
 -->

位于“”之间的任何内容都将被解释为注释,不会产生任何功能性影响。

你需要做的是,delete/remove " “其中的一部分。这是;

     <servlet>
         <servlet-name>invoker</servlet-name>
         <servlet-class>
           org.apache.catalina.servlets.InvokerServlet
         </servlet-class>
         <init-param>
             <param-name>debug</param-name>
             <param-value>0</param-value>
         </init-param>
         <load-on-startup>2</load-on-startup>
     </servlet>

正如书上所写,在同一个 "web.xml" 文件中,您还必须找到以下行;

<!--
    <servlet-mapping>
        <servlet-name>invoker</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping
 -->

并注释掉它们以使它们对 tomcat 可见,就像删除相同的注释行一样,如下所示;

<servlet-mapping>
    <servlet-name>invoker</servlet-name>
    <url-pattern>/servlet/*</url-pattern>
</servlet-mapping

记住,你们都必须在web.xml文件上执行这些。

还有一件事, 如果你找不到这两部分,你可以简单地添加这些如下;

只需将它们按原样添加到 web.xml 文件即可;

     <servlet>
         <servlet-name>invoker</servlet-name>
         <servlet-class>
           org.apache.catalina.servlets.InvokerServlet
         </servlet-class>
         <init-param>
             <param-name>debug</param-name>
             <param-value>0</param-value>
         </init-param>
         <load-on-startup>2</load-on-startup>
     </servlet>


    <servlet-mapping>
        <servlet-name>invoker</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping