我尝试开发语音控制的Web应用程序。问题在于它没有重定向到现有的Webservlets URL,并且没有显示任何错误消息。 这是我Controller.java文件中的doPost方法:(在第二个“如果”中,重定向工作正常,仅在第三个中不起作用。)
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
HttpSession session = req.getSession();
if (req.getParameter("productId") != null){
int prodID = Integer.parseInt(req.getParameter("productId"));
cartHandler.add(prodID);
}
// LOGOUT
if(req.getParameter("btn-logout") != null){
if(session.getAttribute("uID") != null) {
session.removeAttribute("uID");
resp.sendRedirect("/");
}
}
if(req.getParameter("allieStart") != null){
String greeting = allieDaoJDBC.getAnswer("greeting");
playSound.play(greeting);
Integer react = speechRecognition.listen(allieDaoJDBC, cartHandler);
if(react == 1){
resp.sendRedirect("/cart");
}else if(react == 2){
resp.sendRedirect("/login");
}
}
}
谢谢大家!
答案 0 :(得分:0)
如果您确定allieStart
不为null,则问题必须出在react
上
(即react不是1或2。)请尝试添加其他条件,这样可以确保一定会发生。
if(react == 1){
resp.sendRedirect("/cart");
}else if(react == 2){
resp.sendRedirect("/login");
}else{
resp.sendRedirect("/login");
}