Java RequestDispatcher重定向不工作
我试图使用RequestDispatcher从servlet重定向页面,但它不起作用。我的servlet代码如下:Java RequestDispatcher重定向不工作,java,tomcat,servlets,Java,Tomcat,Servlets,我试图使用RequestDispatcher从servlet重定向页面,但它不起作用。我的servlet代码如下: public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; List<User> users = new LinkedList<User>(); /** * @see HttpServlet#HttpServlet()
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
List<User> users = new LinkedList<User>();
/**
* @see HttpServlet#HttpServlet()
*/
public LoginServlet() throws FileNotFoundException, IOException{
super();
File file = new File("C:/Users/Misel/workspace/SalonNamestaja/src/org/SalonNamestaja/dataFiles/users.txt");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line;
String[] parts;
while((line = bufferedReader.readLine()) != null) {
parts = line.split("\\|");
users.add(new User(parts[1], parts[2], parts[0], parts[4], parts[3], parts[5], parts[6]));
}
fileReader.close();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/text");
response.setCharacterEncoding("UTF-8");
String json = request.getParameter("jsonData");
ObjectMapper mapper = new ObjectMapper();
User user = mapper.readValue(json, User.class);
//System.out.println(user.getName() + user.getPassword() + " | " + user.getLevel());
if(user.getLevel().equals("korisnik")) {
user = new LoginService().authenticate(users, user.getName(), user.getPassword());
//System.out.println("Postoji korisnik");
HttpSession session = request.getSession();
session.setAttribute("activeUser", user);
//response.getWriter().write("true");
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/dashboard.jsp");
requestDispatcher.forward(request, response);
//System.out.println("OK");
return;
}else if(user.getLevel().equals("admin")) {
user = new LoginService().authenticate_admin(users, user.getName(), user.getPassword());
System.out.println("Postoji admin");
HttpSession session = request.getSession();
session.setAttribute("activeUser", user);
response.getWriter().write("true");
return;
}else {
System.out.println("Korisnik ne postoji!");
response.getWriter().write("false");
}
}
公共类LoginServlet扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
列表用户=新建LinkedList();
/**
*@参见HttpServlet#HttpServlet()
*/
public LoginServlet()抛出FileNotFoundException,IOException{
超级();
File File=new文件(“C:/Users/Misel/workspace/SalonNamestaja/src/org/SalonNamestaja/dataFiles/Users.txt”);
FileReader FileReader=新的FileReader(文件);
BufferedReader BufferedReader=新的BufferedReader(文件阅读器);
弦线;
字符串[]部分;
而((line=bufferedReader.readLine())!=null){
零件=直线分割(“\\\\”);
添加(新用户(部件[1]、部件[2]、部件[0]、部件[4]、部件[3]、部件[5]、部件[6]);
}
fileReader.close();
}
受保护的void doGet(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
}
/**
*@请参阅HttpServlet#doPost(HttpServletRequest请求,HttpServletResponse响应)
*/
受保护的void doPost(HttpServletRequest请求、HttpServletResponse响应)引发ServletException、IOException{
response.setContentType(“文本/文本”);
响应。setCharacterEncoding(“UTF-8”);
字符串json=request.getParameter(“jsonData”);
ObjectMapper mapper=新的ObjectMapper();
User=mapper.readValue(json,User.class);
//System.out.println(user.getName()+user.getPassword()+“|”+user.getLevel());
if(user.getLevel().equals(“korisnik”)){
user=new LoginService().authenticate(users,user.getName(),user.getPassword());
//System.out.println(“Postoji korisnik”);
HttpSession session=request.getSession();
setAttribute(“activeUser”,用户);
//response.getWriter().write(“true”);
RequestDispatcher=request.getRequestDispatcher(“/dashboard.jsp”);
转发(请求、响应);
//System.out.println(“OK”);
返回;
}如果(user.getLevel().equals(“admin”){
user=new LoginService().authenticate_admin(users,user.getName(),user.getPassword());
System.out.println(“Postoji admin”);
HttpSession session=request.getSession();
setAttribute(“activeUser”,用户);
response.getWriter().write(“true”);
返回;
}否则{
System.out.println(“Korisnik ne postoji!”);
response.getWriter().write(“false”);
}
}
我尝试使用sendRedirect()重定向,但这也不起作用。我找不到问题出在哪里,因此如果有人能帮助我的话。解释
不起作用。
。不重定向到其他页面(dashboard.jsp)这是很明显的,但是如果你能提供关于你的应用程序如何运行的所有信息,我认为你在这里不会得到太多帮助。祝你好运!没有错误,除了重定向,一切都正常。当doPost执行时,你会得到什么?解释不工作。不重定向到另一个页面(dashboard.jsp)这是很明显的,但如果你能提供关于你的应用程序如何运行的所有信息,我认为你在这里不会得到太多帮助。祝你好运!没有错误,除了重定向之外一切都正常。当doPost执行时,你会得到什么?