我目前正在尝试 MVC 1.0 (JSR-371),我现在正面临一个问题。
我的主页有一个控制器,它只显示一些产品。
这是代码:
@Path("/welcome")
@Controller
public class WelcomeController implements Serializable {
//MORE CODE...
@GET
@View(value = "index.jsp")
public void loadAllProducts() {
models.put("products", productService.findAll());
models.put("categories", categoryService.findAll());
}
//MORE CODE...
现在我想为用户建立一个登录,我想在登录后重定向到索引页面。问题是,当我只查看 index.jsp 页面时,页面显然是空的(因为我不会在那里加载产品),所以我认为我只是重定向到 /welcome 页面,但遗憾的是我不能这样做。
这是我尝试过的:
@Path("/login")
@Controller
public class LoginController implements Serializable {
@Inject
private SessionBean sessionBean;
@POST
public Response logIn(@FormParam("name") String name, @FormParam("password") String password) {
sessionBean.setCurrentUser(new User());
return Response.status(Response.Status.SEE_OTHER).header(HttpHeaders.LOCATION, "/webshop/welcome").build();
}
//MORE CODE...
我没有得到任何异常输出,我唯一看到的是 HTTP 状态 500(内部服务器错误)。
有没有办法重定向到 loadAllProducts-Request,这样我就不必在我的登录请求中加载产品?
提前致谢!