【问题标题】:jsp redirect error from java class来自java类的jsp重定向错误
【发布时间】:2012-04-07 10:05:21
【问题描述】:

论坛成员

我遇到了问题,需要您的帮助才能尽快解决。

实际上我正在尝试从我的 JAVA 类中打开 JSP。

下面是我用来转发到我想要的 JSP 页面的代码

@RequestMapping(value = "/login/GetLoginCheck.action")
    public void sitemap (HttpServletRequest request, HttpServletResponse response)  throws Exception {
        try {
            System.out.println("QUERY TO GET LOGIN");
            //response.sendRedirect(response.encodeRedirectURL("../index.jsp"));
            request.getRequestDispatcher("/index.jsp").forward(request, response);
            return;
        } catch (Exception e) {
            return;
        }
    }

毫无疑问,下面的代码会执行。 但是在代码执行而不是转发到 jsp 页面之后,它只是在我的 firebug 控制台上显示 index.jsp 的代码

下面是我的萤火虫控制台的图像。

无法理解为什么它没有重定向到我的 index.jsp 页面。

请建议我尽快完成工作。

【问题讨论】:

  • @sha 我的问题你有什么不明白的???你为什么投反对票??
  • 因为这有点粗鲁...“尽快完成我的工作”...
  • @sha 我很抱歉我的粗鲁。我会记住这一点
  • @sha 我也有同样的问题。实际上,在萤火虫控制台中,我正在获取要打开的页面。为什么我的页面没有与请求页面一起重新加载,这是什么问题?

标签: java spring jakarta-ee


【解决方案1】:

我认为你应该简单地使用response.sendRedirect("/index.jsp")。请注意,../index.jsp 不是基于 documentation 重定向的有效 URL。

【讨论】:

  • 你没有看到那行被我注释掉了??我在我的萤火虫控制台上获得了 index.jsp,但页面没有打开。你明白我的问题吗??
  • 现在,我真的很怀疑。您是否故意使用forward 而不是sendRedirect 但在问题的最后一句中仍然提到“不重定向”?你会忽略一些例外吗?
  • 请看上面的答案并尝试帮助我解决我的问题
【解决方案2】:

在春天你必须这样使用。更多信息here

@RequestMapping(value = "/login/GetLoginCheck.action")
    public String sitemap (HttpServletRequest request, HttpServletResponse response)  throws Exception {
        try {
            System.out.println("QUERY TO GET LOGIN");
            return "index";
        } catch (Exception e) {
            return;
        }
    }

将此添加到您的dispatcher-servlet.xml

<bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix">
            <value>/WEB-INF/jsps/</value> 
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

【讨论】:

  • 当我使用上面的代码时,我得到了 404 错误。在 firebug 的 HTML 选项卡中,它向我显示 /ResourceMgt/WEB-INF/index.jsp 未找到。实际上,该页面不在 WEB-INF 文件夹中,而是在 WebContent 文件夹中。所以请建议我如何在其中指定自定义 jsp 文件夹路径。
  • 请在您的问题描述中包含您的 ViewResolver 的 Spring bean 配置。您可以使用此reference 进行自定义 JSP 文件夹配置。
  • 只需将 /WEB-INF/jsps 更改为 /
  • @RameshK 感谢您的回复,但 jsp 页面出现在我的 firebug 控制台中,但 jsp 页面未在浏览器中加载。正如你所说,我改变了一切。
猜你喜欢
  • 2018-11-30
  • 1970-01-01
  • 2017-07-14
  • 2020-10-22
  • 1970-01-01
  • 1970-01-01
  • 2011-08-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多