Java GlassFish无法识别特定的servlet
我为我的大学课程开发的网络应用程序有问题 网站的注册由一个servlet管理,我称之为“Register”,用户必须通过网站标题中的链接访问该servlet 问题是,如果我将servlet命名为“Register”,GlassFish会拒绝识别它并给我404,但如果我在同一个名为whatever的包中创建一个新servlet,并将“Register”的代码复制/粘贴到该GlassFish上,则一切正常。为什么?我做错了什么 我会给servlet取另一个名字,但我的webapp将被教授开发的某个工具自动检查,因此我不能更改它的名称(坦白说,我不想更改,因为我想了解我的代码有什么问题,并防止再次出现此错误)。对于这个项目,我使用Java8、NetBeans8.2和GlassFish 4.1.1 编辑:我忘了解释我试图在其他页面(在欢迎文件或其他“主要”页面)中链接servlet“Register”,但结果是相同的:如果servlet名为“Register”,则为404,如果更改其名称,则一切正常 下面是header.jsp的代码,它是指向servlet的链接的位置,我在网站的每个页面中都包含了该servlet:Java GlassFish无法识别特定的servlet,java,servlets,glassfish,web.xml,Java,Servlets,Glassfish,Web.xml,我为我的大学课程开发的网络应用程序有问题 网站的注册由一个servlet管理,我称之为“Register”,用户必须通过网站标题中的链接访问该servlet 问题是,如果我将servlet命名为“Register”,GlassFish会拒绝识别它并给我404,但如果我在同一个名为whatever的包中创建一个新servlet,并将“Register”的代码复制/粘贴到该GlassFish上,则一切正常。为什么?我做错了什么 我会给servlet取另一个名字,但我的webapp将被教授开发的某个工
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<div id="header">
<div>
<a href="/ProgettoFPW/index.jsp"><h1>FPWriter</h1></a>
</div>
<div>
<c:if test="${user == null}">
<h2 style="color: gray">Articoli/Gestione</h2>
</c:if>
<c:if test="${user != null}">
<c:if test="${user.isAuthor() == true}">
<a href="/ProgettoFPW/pages/articoli.jsp"><h2>I miei articoli</h2></a>
</c:if>
<c:if test="${user.isAuthor() == false}">
<a href="/ProgettoFPW/pages/gestione.jsp"><h2>Le mie valutazioni</h2></a>
</c:if>
</c:if>
</div>
<div>
<c:if test="${user == null}">
<!-- this line gives me problems -->
<a href="/ProgettoFPW/Register"><h2>Registrazione</h2></a>
</c:if>
<c:if test="${user != null}">
<a href="/ProgettoFPW/pages/profilo.jsp"><h2>Profilo di ${user.getName()}</h2></a>
</c:if>
</div>
<div>
<c:if test="${user != null}">
<!-- this line doesn't give me problems, even though it works just like the other one -->
<a href="/ProgettoFPW/Logout">
<h2>Logout</h2>
</a>
</c:if>
<c:if test="${user == null}">
<a href="/ProgettoFPW/pages/login.jsp">
<h2>
Login
</h2>
</a>
</c:if>
</div>
</div>
阿替奥利/格斯特奥尼
请注意,我使用相同的方式链接“注销”servlet,但这不会给我带来任何问题。这就是为什么我对这个不起作用的唯一解释是servlet的名称
以下是我的webapp文件夹结构的屏幕截图:
这是我的web.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" 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">
<welcome-file-list>
<welcome-file>pages/login.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>control.Login</servlet-class>
</servlet>
<servlet>
<servlet-name>Logout</servlet-name>
<servlet-class>control.Logout</servlet-class>
</servlet>
<servlet>
<servlet-name>Register</servlet-name>
<servlet-class>control.Register</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/Login</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Logout</servlet-name>
<url-pattern>/Logout</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Register</servlet-name>
<url-pattern>/Register</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
页面/login.jsp
登录
控制。登录
注销
控制。注销
登记
控制。寄存器
登录
/登录
注销
/注销
登记
/登记册
30
你能帮我一下吗?我真的迷路了。如果我的解释缺少一些信息,请告诉我部署时日志文件中是否有错误?部署时日志文件中是否有错误?