我正在使用Eclipse Indigo。在我的HTML表单操作方法中,我将<form action="T1" method="post">
放在其中T1是Java servlet。如果我编辑并将表单操作方法重命名为T2并保存更改,则在localhost上运行tomcat服务器时,单击按钮后仍然会转到T1!
我尝试刷新我的项目,删除并重新创建服务器,但仍然是同样的问题。我该怎么办?
感谢任何帮助。
我的web.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
这是我的html文件:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="Pk" method="post">
Name <input type="text" name="tex1"> <br>
Address <input type="text" name="tex2"> <br>
College Name <input type="text" name="tex3"> <br>
Aggregate percentage <input type="text" name="tex4"> <br>
Title of Resume <input type="text" name="tex5"> <br>
Username <input type="text" name="tex6"> <br>
Password <input type="password" name="tex7"> <br>
<input type="submit" name="sub" value="Login"> <br>
</form>
</body>
</html>
这是servlet文件:
public class Pk extends HttpServlet {
private static final long serialVersionUID = 1L;
String name="",addr="",coll="", aggper="", tor="", user="", pass="";
public Pk() {
super();
// TODO Auto-generated constructor stub
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out=response.getWriter();
name=(String)request.getParameter("tex1");
addr=(String)request.getParameter("tex2");
coll=(String)request.getParameter("tex3");
aggper=(String)request.getParameter("tex4");
tor=(String)request.getParameter("tex5");
user =(String)request.getParameter("tex6");
pass =(String)request.getParameter("tex7");
System.out.println("Reached after fetching values");
if(user.equals("")||pass.equals("")||user.equals(null)||pass.equals(null))
{
out.println("Username or Password cannot be blank.");
}
else
{
System.out.println("Reached in else condition");
Pk2 reg=new Pk2();
reg.Registration(name,addr,coll,aggper,tor,user, pass);
RequestDispatcher rd=request.getRequestDispatcher("index.html");
rd.forward(request, response);
}
}
}
答案 0 :(得分:0)
上一次我遇到同样的问题是因为浏览器缓存了网页。您能否在浏览器的私密模式(或Chrome隐身模式)中清除历史记录或尝试相同的历史记录。您还可以通过在Chrome中按F12按钮使用firebug实用程序或Chrome自己的实用程序来验证网页的源代码。
PS - 我可以在评论中提到这一点,但我没有足够的Stackoverflow声誉来评论这篇文章。
答案 1 :(得分:0)
最后解决了,问题在于我的注释本身,因此在点击登录按钮后页面没有加载。在更改了html / servlet文件和刷新和清理项目之后,我仍然习惯得到404错误,但是实现的问题是浏览器缓存页面。所以清除缓存和瞧! 并感谢所有人的帮助