您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

找不到http://java.sun.com/jsf/facelets的标签库描述符

找不到http://java.sun.com/jsf/facelets的标签库描述符

Facelets旨在完全 JSP。但是,您正在尝试将其声明为JSP taglib。这永远不会起作用。两者都是独特的视图技术。Facelets是一种基于XML的视图技术,旨在替代JSP。在2009年12月发布的Java EE 6中,它已取代JSP作为JSF的标准视图技术,此后不推荐使用JSP。

您需要将文件扩展名从重新命名为.jsp.xhtml并用XML名称空间声明替换所有JSP taglib声明,并删除所有<jsp:xxx>标记和所有<% %>scriptlet。

因此,例如下面的基本JSP模板 page.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html>
<f:view>
    <html lang="en">
        <head>
            <title>JSP page</title>
        </head>
        <body>
            <h:outputText value="JSF components here." />
        </body>
    </html>
</f:view>

必须重写为 page.xhtml

<!DOCTYPE html>
<html lang="en"
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <head>
        <title>Facelet page</title>
    </head>
    <body>
        <h:outputText value="JSF components here." />
    </body>  
</html>

最后,提到的JAR文件是Facelets 1.x JAR,而Facelets 2.x自2009年以来就已经作为JSF 2.x实现的一部分发布。如果可以,我强烈建议您跳过Facelets1.x并继续使用Facelets2.x。

java 2022/1/1 18:15:26 有337人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶