【问题标题】:Unable to include a JSP file无法包含 JSP 文件
【发布时间】:2015-02-23 03:28:59
【问题描述】:

我正在尝试检查文件是否存在,如果 true 则包含 JSP 文件。但我从下面的代码中得到错误。

标记语法错误,删除这些标记

file.handler 无法解析为类型

标记“=”的语法错误,。预计

这是我的代码:

String uri = request.getRequestURI();
String pageName = uri.substring(uri.lastIndexOf("/")+1);
String filename = pageName.replace(".jsp", "");

String path = request.getServletPath();  
path = path.replace( pageName , "");

String handler=path+"handler/"+filename+"_handler.jsp";

if(null != application.getResource(handler)){
    <%@include file="${handler}"%>
}

我是一名 PHP 程序员,但我是 JSP 新手。请指教

【问题讨论】:

    标签: java jsp servlets include requestdispatcher


    【解决方案1】:

    尝试使用 JSP 表达式,例如:

    <%@include file="<%=handler %>" %>
    

    【讨论】:

      【解决方案2】:

      &lt;jsp:include page="${handler}"/&gt; 呢?

      【讨论】:

      • 这并没有提供问题的答案。要批评或要求作者澄清,请在其帖子下方发表评论。
      • @Markus 这是一个批评或澄清请求吗?这是一个简单问题的单行答案。
      • 询问 OP 实际上既不能表明您确定您的答案会奏效,也不能解释为什么 OP 应该尝试它或这个未注释的代码 sn-p 与原始问题的关系。除此之外,我的评论是评论系统的预制评论,当我将您的答案标记为删除时,这是最合适的评论。
      • 这个答案的唯一错误是它是一个问题的形式。我可以将其改写为“试试这个……”,但它本质上并没有改变任何东西。 “不确定它是否有效”,我有很多页面,这段代码 sn-p 可以完美运行,这是否意味着它可以在任何地方工作?显然不是,因为它不适用于 OP。按照这个逻辑,除了接受的答案之外的所有答案都应该被删除。
      【解决方案3】:

      您可以尝试使用调度程序来包含资源

      if(null != application.getResource(handler)){
          request.getRequestDispatcher(handler).include(request, response);
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-12
        • 2016-08-12
        • 2014-02-08
        • 1970-01-01
        • 2017-10-25
        • 2016-02-19
        • 2017-02-04
        相关资源
        最近更新 更多