为一个servlet配置web.xml(Tomcat 5)以处理所有传入请求?

5 java tomcat web.xml servlets

基本上我想要一个servlet来处理所有传入的请求,而不管路径如何.我在共享托管环境中可以访问配置我自己的web.xml文件.

我在web.xml中配置了以下内容,但它不适用于Tomcat 5:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=
        "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  
    <display-name>Redirect</display-name>
    <servlet>
         <display-name>Redirect</display-name>
         <servlet-name>Redirect</servlet-name>
         <servlet-class>com.Redirect</servlet-class>
         <init-param>
            <param-name>host</param-name>
            <param-value>www.myredirectdomain.com</param-value>
        </init-param>
        <init-param>
            <param-name>redirect-type</param-name>
            <param-value>301</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>Redirect</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)

以上工作适用于以路径中的目录开头的任何内容,例如:

www.mydomain.com/anypath1/anypath2...
www.mydomain.com/anypath1
Run Code Online (Sandbox Code Playgroud)

但是,不起作用:

www.mydomain.com/ or
www.mydomain.com
Run Code Online (Sandbox Code Playgroud)

我还尝试了以下servlet映射:

<servlet-mapping>
    <servlet-name>Redirect</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

结果相同.既没有工作......任何人都有任何建议吗?

lev*_*vik -1

你试过了吗

<url-pattern>*</url-pattern>
Run Code Online (Sandbox Code Playgroud)