0

我有一个 JSP 页面来搜索客户。该页面调用控制器,控制器执行返回客户列表并转发到源 URL 的方法;

我曾经转发:request.getRequestDispatcher(urlOrigin).forward(request, response);

(注 1:request.getHeader("Referer") 用于获取完整的原始 URL)

(注 2:有一种方法可以拆分完整的原始 URL 并获取名称页面)

从那以后,我在浏览器中有以下网址:

(http://domain/ProjetoT/mvc)

它是我的控制器的网址

如果我再次搜索客户将不起作用,因为控制器 url 将被识别为原始 url。

我尝试使用: response.Sendredirect(urlOrigin);

但是我丢失了我的对象并且没有呈现客户列表。

任何人都可以帮助我吗?

谢谢!

4

1 回答 1

0

您可以通过用于处理搜索的同一控制器访问它,而不是直接在浏览器中直接访问 JSP 页面。为此,您必须对控制器进行编程以检测您是处于初始显示模式还是处于“提交”模式。这通常通过检查提交中发送的参数的存在来完成。

因此,在初始显示模式下,您的控制器只会转发到 JSP 而不进行任何进一步处理,而在提交模式下,它会执行当前正在执行的操作。这样,您将对初始显示和提交使用相同的 URL,并且您描述的问题应该消失(也就是说,如果我正确理解您的问题)。

于 2013-03-31T01:00:29.147 回答