【问题标题】:URL not updating with latest page changesURL 未随最新页面更改而更新
【发布时间】:2013-03-16 03:30:32
【问题描述】:

我有一个和这个很相似的问题:How to navigate in JSF? How to make URL reflect current page (and not previous one)

这实际上是同一个问题,但发生在不同的情况下,当我使用<jsp:forward>标签时

为了让您了解情况,我有一个表单,要求用户输入并传递以执行登录。这将重定向到执行检查、更新会话的新页面 (checklogin.jsp),如果一切正常,则如下所示:

  if (con.comprobarUserPass(passmd5)) { // We check everything is OK
           sesion.setAttribute("conexion", con);
           sesion.setAttribute("pass", passmd5);
  %>
  <jsp:forward page="index.jsp"/> //forwards to the index
  <%
  } else {
  %>
  <jsp:forward page="login.jsp"> // user/pass error, goes back to the login.jsp page
     <jsp:param name="error" value="<strong><span style=\"color:red;\">Usuario y/o clave incorrectos. <br>Vuelve a intentarlo.</span></strong>"/>
  </jsp:forward>
  <%               }
  } catch (userPassIncorrectoException e) {
  %>
  <jsp:forward page="login.jsp">
     <jsp:param name="error" value="<strong><span style=\"color:red;\">Usuario y/o clave incorrectos. <br>Vuelve a intentarlo.</span></strong>"/>
  </jsp:forward>
  <%                       }
  %>

好吧,问题出现在这里,即使我被重定向到 index.jsp 页面或 login.jsp 页面我的 url 是:

http://localhost:8084/myContext/checklogin.jsp

任何想法为什么会发生这种情况?它使调试过程变得比应有的更加困难。

【问题讨论】:

  • 你怎么打电话给checklogin.jsp?使用 JavaScript 吗?
  • @HardikMishra Mishra nope,请求用户并通过的表单将其作为操作:&lt;form id="form1" name="form1" method="get" action="checklogin.jsp"&gt;

标签: jsp url redirect


【解决方案1】:

通过使用response.sendRedirect("pageToGo"); 并在表单提交和提交后我需要去的实际页面之间插入一个页面,解决了我的问题。

这样表单将调用中间网络,该中间网络仅重定向到用户在提交表单后必须看到的页面。

【讨论】:

    猜你喜欢
    • 2016-02-01
    • 2016-01-12
    • 1970-01-01
    • 2011-04-08
    • 1970-01-01
    • 1970-01-01
    • 2010-12-26
    • 2016-04-12
    相关资源
    最近更新 更多