Jsf 为什么我将h:outputLabel作为未知标记?

Jsf 为什么我将h:outputLabel作为未知标记?,jsf,facelets,Jsf,Facelets,我正在为实习期间的一个项目学习JSF,我真的很努力 有人能解释为什么在这段代码中,我得到了h:outputLabel的“未知标记”警告吗 谢谢大家! <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.

我正在为实习期间的一个项目学习JSF,我真的很努力

有人能解释为什么在这段代码中,我得到了h:outputLabel的“未知标记”警告吗

谢谢大家!

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Insert title here</title>
</head>
<body>

    <h:outputLabel value ="Welcome #{loginbean.name}"></h:outputLabel>

</body>
</html>

在此处插入标题

因为您忘记声明
h:
XML名称空间

将该XML名称空间添加到
元素中

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html">
另见:

您能否解释一下,为什么在模板文本中使用它更好,而不使用h:outputText?因为它不在jsf树中,它真的节省了时间吗?@marcel:它最终会在jsf树中结束,但开销更少,可维护性更好。这太快了!谢谢:)
<h:outputText value="Welcome #{loginbean.name}" />