【问题标题】:multiple servlet entries in web.xml tomcatweb.xml tomcat 中的多个 servlet 条目
【发布时间】:2015-08-18 06:50:25
【问题描述】:

这是我的 web.xml 的代码。它有两个映射到不同 url 的 servlet。如果我一次只放一个 url,那么这两个 servlet 都可以正常工作。但是将它们放在 xml 中总是调用“loginpage” servlet,即使请求是“http://localhost:8181/servlet_jsp/loginauth”对于“loginauth”。

我知道我可以使用注释之类的替代方法,但我的好奇心是,为什么这个特殊代码不起作用。

这是我的 web.xml:

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <web-app 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/webapp_2_4.xsd" version="2.4">

    <servlet>
        <servlet-name>loginauth</servlet-name>
        <servlet-class>login.LoginAuth</servlet-class>  

        <servlet-name>loginpage</servlet-name>
        <servlet-class>login.LoginPage</servlet-class>  
    </servlet>
    <servlet-mapping>
        <servlet-name>loginauth</servlet-name>
        <url-pattern>/loginauth</url-pattern>       

        <servlet-name>loginpage</servlet-name>
        <url-pattern>/loginpage</url-pattern>       
    </servlet-mapping>

</web-app>

【问题讨论】:

  • 能否请您提供 jsp 页面和您的 servlets 类??

标签: servlets tomcat7


【解决方案1】:

您需要将定义分别放在servletservlet-mappingelements 中:

<servlet>
    <servlet-name>loginpage</servlet-name>
    <servlet-class>login.LoginPage</servlet-class>  
</servlet>

<servlet>
    <servlet-name>loginauth</servlet-name>
    <servlet-class>login.LoginAuth</servlet-class>  
</servlet>

<servlet-mapping>
    <servlet-name>loginauth</servlet-name>
    <url-pattern>/loginauth</url-pattern>       
</servlet-mapping>

<servlet-mapping>
    <servlet-name>loginpage</servlet-name>
    <url-pattern>/loginpage</url-pattern>       
</servlet-mapping>

【讨论】:

    猜你喜欢
    • 2012-09-23
    • 2011-11-24
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2012-09-18
    • 1970-01-01
    • 1970-01-01
    • 2012-12-04
    相关资源
    最近更新 更多