java - 尝试在 JSF 中执行 "include"时出现问题

标签 java jsf

我试图在我的所有页面中包含一大块静态 html。我尝试了下面的代码,但没有成功。我还尝试了其他一些方法,但无法使其发挥作用。我正在阅读有关如何使用 ui 标签的内容,但我也无法让它发挥作用。我需要做什么才能将页面包含在 JSF 中。

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich">

<h:head>
...
</h:head>
<h:body>

    <jsp:include src="/common/includes/founcred1.html" />
...
</h:body>

最佳答案

考虑到标记的 XML 语法,您似乎正在使用 Facelets ( *.xhtml ) 作为 View 技术。 Facelets是一种完全不同的 View 技术,是JSP的继承者。您不应该在 Facelets 中使用 JSP 标记。暂时忘记 JSP。使用 Facelets 标签。它们将由 XML 名称页 xmlns:ui="http://java.sun.com/jsf/facelets" 声明。要在 Facelets 中包含页面片段,请使用 <ui:include> 标签。

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich">
    <h:head>
        ...
    </h:head>
    <h:body>
        <ui:include src="/common/includes/founcred1.xhtml" />
    </h:body>
</html>

您只需重命名您的 founcred1.htmlfouncred1.xhtml并将内容包装在 <ui:composition> 中.

<ui:composition 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <p>HTML here</p>
</ui:composition>

另请参阅:

关于java - 尝试在 JSF 中执行 "include"时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7028728/

相关文章:

java - setOnEditCommit JavaFX 后禁用 TableCell

java - Java 游戏中的 JLabel/JFrame 中不显示背景图像

java - Eclipse下载库为空

ajax - JSF ViewParam 必需 +AJAX 中断页面

java - 使用 ArrayList 将对象追加到文件

java - 无法解析方法值?

java - 如何遍历 Java bean 的所有属性

java - jsf 中 SelectItem 中的工具提示

java - 将 Primefaces jar 部署为 OSGi 包 - 未找到 javax.faces 类

javascript - JSF 不允许通过 jquery 和 javascript 生成 html 标签?