我知道这个问题已经被问了很多,但我尝试了一切,它仍然不为我工作,希望有人能帮助。
我试图运行一个servlet页面服务器与eclipse,不断显示此错误:
下面是我的源代码:
我写了一个简单的servlet页面,只是为了看看它在服务器上运行:
package main.java.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class StationsServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public StationsServlet() {
}
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter writer = resp.getWriter();
writer.println("<html>");
writer.println("<body>");
writer.println("Hello");
writer.println("</body></html>");
writer.flush();
}
@Override
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
}
我的web.xml:
<?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"
version="3.1">
<display-name>weather-files-war</display-name>
<welcome-file-list>
<welcome-file>home.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>stationsServlet</servlet-name>
<servlet-class>main.java.servlet.StationsServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>stationsServlet</servlet-name>
<url-pattern>/stations</url-pattern>
</servlet-mapping>
</web-app>
最后,我的文件夹/模块结构:
- PS:我创建了一个homepage.jsp,它在服务器上工作正常,问题是当命中servlet类时。
4条答案
按热度按时间lvjbypge1#
首先检查一下你的www.example.com附近的感叹号有什么问题StationsServlet.java
另外,尝试在servlet类中的
public class StationsServlet extends HttpServlet {
之前添加注解@WebServlet(name = "StationsServlet ", value = "/stations")
。它需要帮助。nxowjjhe2#
我创建了一个新的项目和一个新的工作区,只需将模块和类复制到新的工作区,它就工作了。
我猜这与eclipse项目的结构和配置有关。
vc6uscn93#
希望这些信息对寻找这个常见问题答案的程序员有用。这个答案是基于这个问题的。
请确保您的servlet类位于以下文件夹下**(您的项目名称)/src/main/java**
在servlet中添加注解**@WebServlet(name=“stationsServlet”,value =“/stations”)**
您的.jsp(homepage.jsp)表单应该是,
请按照以下步骤操作。
uelo1irk4#
我在我的M1 MacBook Pro上遇到了这个问题,但可能会在任何M1/M2设备上复制。问题是我使用的SQLite库版本。我使用的是v3.41.2.1。请记住,如果需要,请相应地修改构建路径。