SpringJSP保持缓存状态

SpringJSP保持缓存状态,jsp,jakarta-ee,servlets,jquery-mobile,spring-mvc,Jsp,Jakarta Ee,Servlets,Jquery Mobile,Spring Mvc,我正在使用的servlet有问题。它是spring框架上的移动设备站点,使用Java和JQuery mobile,部署在weblogic下。我对网站内的应用程序使用相同的jsp,在不同的用户角色/登录-注销用户等情况下可能会有所不同。如果我登录并单击应用程序的按钮,它看起来是正确的。我提交了一个错误的表单,比如说,一个带有错误消息的div出现在顶部。我单击home,然后如果我注销或不注销,然后再次单击按钮,页面将被缓存,错误仍然显示。只有当我在地址栏中输入请求时,控制器才会再次被访问 你知道会有

我正在使用的servlet有问题。它是spring框架上的移动设备站点,使用Java和JQuery mobile,部署在weblogic下。我对网站内的应用程序使用相同的jsp,在不同的用户角色/登录-注销用户等情况下可能会有所不同。如果我登录并单击应用程序的按钮,它看起来是正确的。我提交了一个错误的表单,比如说,一个带有错误消息的div出现在顶部。我单击home,然后如果我注销或不注销,然后再次单击按钮,页面将被缓存,错误仍然显示。只有当我在地址栏中输入请求时,控制器才会再次被访问

你知道会有什么问题吗?我尝试了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"/> 

演示“我尝试了response.setHeader,但没有缓存和其他禁用浏览器缓存的解决方案”。也许你只是做错了。例如,错误/不完整的标题或错误的响应。在方法开始时,我有response.setHeader(“缓存控制”,“无缓存,无存储,必须重新验证”);setHeader(“Pragma”,“无缓存”);setDateHeader(“Expires”,-1);最后,我返回我的jsp。。我认为这可能是spring/weblogic配置的问题。。