我正在通过对 servlet 进行一些调用来进行简单的程序重定向。但是,由于某种原因,每次尝试在此特定项目构建中构建代码时,我都会不断收到 404 错误。
值得注意的是,我正在 Eclipse 中构建这个项目并且正在使用 Apache Tomcat。
这是我的编码....
首先是 HTML:
为了避免一些麻烦,这是出现问题的特定片段。我与 MySQL 数据库的连接以及数据库读取运行良好。
<form action="objectServer" method="get">
<select name="choice">
<% while (rs.next()){ %>
<option value="<%=rs.getString(2) %>"><%=rs.getString(2) %></option>
<% }
MysqlConnection.close(connect);
%>
</select>
<br />
<input type="submit" value="View the Descrition!" />
</form>
Java代码:
第一个是一个简单的 java 类,它验证一个项目是否已被选中并帮助重定向。
package com.program.service;
public class Service {
public boolean redirect(String selected){
if( (selected == null) || (selected == "") ){
return false;
} else {
return true;
}
}
}
最后是 servlet 本身。
package com.program.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.wines.service.Service;
@WebServlet("/objectServer")
public class InfoServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String selected = request.getParameter("choice");
Service service = new Service();
boolean redirector = service.redirect(selected);
if(redirector){
response.sendRedirect("next_page.jsp");
} else {
response.sendRedirect("this_page.jsp");
}
}
}
正如人们所看到的,这是一个非常简单的程序,应该重定向到下一页,但由于某种原因,我错过了一些我现在看不到的东西。我不知道这是否是我的编码、我的服务器或其他我可能错过的问题。需要注意的是,web.xml 尚未在此特定应用程序中进行编程。