我正在处理的 servlet 有问题。这是一个基于spring框架的移动设备站点,使用Java和JQuery Mobile,部署在weblogic下。我对站点内的应用程序使用相同的 jsp,如果用户角色/登录 - 注销用户等不同,可能会有所不同。如果我登录并单击应用程序的按钮,它看起来正确。假设我提交了一个错误的表单,并且顶部出现了一个带有错误消息的 div。我点击主页,然后如果我退出或没有,然后再次点击按钮,页面被缓存并且仍然显示错误。只有当我在地址栏中输入自己的请求时,控制器才会再次被访问。
知道会有什么问题吗?我尝试使用 no-cache 和其他解决方案来禁用浏览器缓存的 response.setHeader,因为这似乎是问题所在,但似乎没有一个有效。
我的应用程序流程如下:单击主页上的按钮时,请求会调用控制器来验证您是否已登录,然后返回 jsp,如下所示:
@RequestMapping(value ="/recharge",method = RequestMethod.GET)
public String render(org.springframework.ui.Model model, HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException {
---- do some checks ----
return "recharge"
}
然后在加载 jsp 时,它具有知道要显示/隐藏什么所需的参数。如果您在 jsp 上提交,它会转到另一个函数并执行一些操作。,然后返回带有一些url参数的相同jsp。
该应用程序的所有链接如下:
<a href = <c:url value="/mobilesite/recharge"/>
这似乎只有当我在 JSP 中提交表单(url 更改)时才会发生。我需要这些参数,所以我不能丢失它们。但是我希望如果用户离开页面并再次单击以转到应用程序,则所有渲染部分都将再次计算。任何想法我怎么能克服这个?
提前致谢 !
编辑:点击链接时,Firebug 也不会显示请求。