【问题标题】:Servlet Wrong responseServlet 错误响应
【发布时间】:2016-11-03 13:19:48
【问题描述】:

我的 Web 应用程序中有 3 个 servlet。

第一个 servlet 工作正常。 从第一个复制的第二个和第三个 servlet 不起作用并且没有得到响应。

但是,我在互联网上搜索,所有网站都说:the error in web.xml file

这是我的web.xml 文件:

  <?xml version="1.0" encoding="UTF-8"?>
  <web-app version="3.1">
<servlet>
    <servlet-name>getmarks</servlet-name>
    <servlet-class>getmarks</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet>
    <servlet-name>Login</servlet-name>
    <servlet-class>Login</servlet-class>
    <load-on-startup>2</load-on-startup>
</servlet>
<servlet>
    <servlet-name>Enter</servlet-name>
    <servlet-class>Enter</servlet-class>
    <load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>getmarks</servlet-name>
    <url-pattern>/getmarks</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Login</servlet-name>
    <url-pattern>/Login</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Enter</servlet-name>
    <url-pattern>/Enter</url-pattern>
</servlet-mapping>
<session-config>
    <session-timeout>
        30
    </session-timeout>
</session-config>

【问题讨论】:

  • 什么是不工作的 servlet 名称?日志中有错误吗?不工作的 Servlet 的代码在哪里?只是说,不工作是不够的。
  • Login and Enter not response 但是(Login and Enter)是getmarks servlet的副本

标签: java xml servlets web-applications


【解决方案1】:
    Try This Code Web.xml file 



<?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
      <display-name>Your Project Name</display-name>
    <servlet>
        <servlet-name>ABC</servlet-name>
        <servlet-class>getmarks</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name>DEF</servlet-name>
        <servlet-class>Login</servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name>GHI</servlet-name>
        <servlet-class>Enter</servlet-class>
        <load-on-startup>3</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>ABC</servlet-name>
        <url-pattern>/getmarks_1</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>DEF</servlet-name>
        <url-pattern>/Login_1</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>GHI</servlet-name>
        <url-pattern>/Enter_1</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    </web-app>

【讨论】:

    【解决方案2】:

    你应该把完整的类名放在&lt;servlet-class&gt;标签中。

    另外,&lt;web-app&gt; 标签缺少一些关于 XML Schema 的属性。您可以找到更多信息here

    对于 3.1 版,它应该如下所示:

    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
             http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
    
    // your mappings 
    
    </web-app>
    

    关闭&lt;/web-app&gt;标签也不见了。

    【讨论】:

    • 是的,我放了这个,但这不是真的,谢谢。
    • @HasanEdrees 您应该提供更多信息。您可以编辑问题以包含 servlet 类吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-05
    相关资源
    最近更新 更多