如何在Facelets页面中包含JSP页面?
mypage.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<meta charset="utf-8"></meta>
<link href="css/bootstrap.css" rel="stylesheet"></link>
</h:head>
<h:body>
</h:body>
</html>
header.jsp
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<div class="nav-collapse collapse">
<ul class="nav">
<li><a href="index.xhtml">Home</a></li>
<li><a href="login.xhtml">Login</a></li>
</ul>
</div>
</div>
</div>
</div>
答案 0 :(得分:3)
Facelets没有内置支持包含JSP文件。 JSP是一种弃用的视图技术,Facelets基本上是它的继承者。由于不推荐使用JSP,您不应该期望它有任何支持计划。
只需将header.jsp
重命名为header.xhtml
并消除任何特定于JSP的工件。 JSP中没有任何东西对JSF / Facelets来说是“不可能的”。
作为一种临时手段,您可以使用OmniFaces <o:resourceInclude>
标记在Facelets中嵌入JSP / Servlet页面的输出。请注意,它就像<c:import>
的工作原理一样,只能用于静态内容。
答案 1 :(得分:1)