首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSP:include没有呈现包含的文件

JSP:include没有呈现包含的文件
EN

Stack Overflow用户
提问于 2010-10-03 11:14:45
回答 1查看 4K关注 0票数 1

我刚刚创建了一个新的IceFaces应用程序,并试图在所有页面中包含一个导航栏。当我使用jsp:directive.include标记时,文件是包含的,但是当我使用jsp:include时,它似乎没有被加载。实际上,当我在浏览器中检查HTML源代码时,所包含的文件就好像完全是空的。我不想使用jsp:directive.include,因为它不会自动显示对包含的文件的任何更新。

我的环境:Eclipse3.5,Tomcat 6,JSF1.2,IceFaces 1.8。

重现问题和代码片段的步骤:

  1. 使用以下选项创建一个新的动态Web项目:目标运行时:ApacheTomcatV6.0动态web模块版本: 2.5配置: ICEfaces项目
  2. 创建一个新的ICEFaces JSPX文件--主文件。一些代码:

http://www.w3.org/TR/html4/loose.dtd”/>测试文件

  1. 创建要包含的文件,也作为一个新的ICEFaces JSPX文件。简化代码:
代码语言:javascript
复制
 <ice:form>         <ice:panelGrid columns="1" width="152">         <ice:graphicImage url="./img/image.jpg"></ice:graphicImage>         <ice:panelCollapsible expanded="true">             <f:facet name="header">                 <ice:panelGroup>                     <ice:outputText value="Customer"/>                 </ice:panelGroup>             </f:facet>             <ice:panelGrid columns="1">                 <ice:commandLink action="customer"><ice:outputText value="Customer name" /></ice:commandLink>             </ice:panelGrid>         </ice:panelCollapsible>     </ice:panelGrid>     </ice:form>     </body>     </html> </f:view>

几点意见:

  1. 我对JSF完全陌生,所以请原谅任何明显的错误。
  2. 在主文件(第一个)中,我不同时使用两个标记。我把这两个都贴在这里只是为了表明我正在尝试这两种选择。
  3. 我将这两个文件创建为"ICEFaces JSPX文件“,但第二个文件被指定为.jsp扩展名。
  4. 当我使用directive.include标记时,将加载包含的文件。但是如果我改变了它,它就不会自动重新发布。
EN

回答 1

Stack Overflow用户

发布于 2010-10-03 14:06:51

首先,您必须分离和区分几种技术:

  • JSP是一种基于Java的视图技术,它允许您在其中编写HTML/CSS/JS,并使用标记库调用后端Java代码和/或控制输出流。
  • JSPX与JSP相同,但强制您以XML格式编写代码。特定于JSP的标记被XML格式的标记所取代。JSPX也被称为"JSP文档“。这里是一个基本教程,它概述了标记的差异。
  • JSF是一个基于组件的MVC框架,它提供带有标签风格的组件,输出HTML/CSS/JS。

不能在JSPX页面中使用<jsp:include>。您必须将JSPX页面转换为JSP页面。您需要将文件.jspx重命名为.jsp,并用.jsp标记替换JSPX特定的标记。下面是一个JSP与JSF/IceFaces的入门示例:

代码语言:javascript
复制
<%@ page pageEncoding="ISO-8859-1" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://www.icesoft.com/icefaces/component" prefix="ice"%>
<!DOCTYPE html>
<f:view>
    <html lang="en">
        <head>
            <title>Title</title>
        </head>
        <body>
            <jsp:include page="include.jsp" />
        </body>
    </html>
</f:view>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3849515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档