当前位置: 首页 > 知识库问答 >
问题:

正确重定向到WEB-INF中的JSP

郭均
2023-03-14

我对此很困惑。我把我所有的。JSP文件都放在WEB-INF/页面/里,想访问它们。

我在/forward/*上做了一个requestDispatcher,如下所示

    @WebServlet("/forward/*")
public class ForwardController extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.getRequestDispatcher("/WEB-INF" + req.getPathInfo()).forward(req, resp);
    }
}

这非常有效,我可以使用/forward/pages/index访问我的JSP文件。不过,我读到的jsp应该是用户无法访问的,但现在它显然是可以访问的。这样做对吗?

另外,现在我们已经重定向到该链接,http://localhost/forward/pages/index.jsp想要注销,我用一个按钮来打开/注销,但是现在前面的链接如下所示,http://localhost/forward/pages/logout

我怎样才能克服这两件事?

顺致敬意,

共有1个答案

慕皓君
2023-03-14

如上所述,WEB-INF中的jsp页面只能通过控制器访问,所以每当您需要从另一个jsp访问任何jsp时,您都需要通过控制器进行路由。如果您想访问jsp到jsp,那么这些应该在WEB-INF之外

 类似资料:
  • 问题内容: TextPanel.java FormPanel.java JumpHosts.java 因此,每当我单击任何按钮时,输出都将被重定向到仅一个文本区域,而其他似乎无法使用。即到最后创建的标签。我希望当我单击按钮1时,它应该写入选项卡1,而当我单击按钮2时,它应该写入选项卡2,依此类推。 我不熟悉Java的例子 问题答案: 在JumpHosts中: 您创建一个实例,该实例在程序中没有其他

  • 问题内容: 我正在nodejs / expressjs中构建购物车应用程序。在用户登录后重定向到正确的页面时,我遇到了一些问题。我发现有几篇文章密切相关,但是我从给定的文章中进行修复的所有尝试都没有成功。 发生的情况是,用户输入其登录信息,然后单击登录按钮。Ajax请求将数据发送到此访问功能。该功能首先检查用户是否存在于数据库中。如果是,那么它将继续比较bcrypt密码,如果它们相等,则它们成功登

  • 我将Azure云与Web应用程序一起使用,我的服务器端写在上。当Web应用程序收到超文本传输协议请求时,我想将请求重定向到https,我找到了解决方案。我将其放在标记内的web.config文件中。 问题是当我在浏览器中键入“https://myURL.com“它重定向到主屏幕,一切正常,但当我将https改为http时”http://myURL.com“它重定向到https://myURL.co

  • 我用Laravel 5.6创建了一个简单的身份验证,我试图将登录用户重定向到仪表板,如果他们转到登录页面,并将访客重定向到登录页面,如果他们转到仪表板页面。 我使用laravel默认中间件(重定向): 这是我的路线: 当登录用户尝试访问登录页面时,一切正常,他们重定向到仪表板页面。但是,当来宾尝试访问登录页面时,页面出错:页面没有正确重定向 我到底做错了什么?

  • 我试图发出授权请求,但收到错误: 重定向URI未正确注册到DocuSign 这是我正在使用的URL: https://account-d.docusign.com/oauth/auth?response_type=code 这是我注册的重定向URI,与上面的URL匹配: 这是错误: 客户端id与integrator密钥匹配。 有什么指点吗?

  • 我正在使用Asgard CMS,这是一个基于Laravel 5.1构建的模块化CMS,并且在我创建的特定模块中面临上述问题。 整个站点都有很多post请求和重定向,这很好,但是当涉及到配置文件模块时,我遇到了这个问题。 我将一个编辑请求发布到一个路由,在完成一些工作后,我重定向回路由。当我重定向时,它会显示一个空白页面,上面写着“重定向到”http://www...“首先写入,然后在2-3秒后重定