发生错误:java.lang.IllegalStateException:组件javax.faces.component.UIViewRoot@7cf94d3b不是预期的类型。预期:javax.faces.component.UIoUtput。也许您缺少标签?
该<f:view>
操作导航到的JSP文件中缺少该标记。如果您使用遗留的JSP作为视图技术而不是其后继的Facelets,则需要确保所有JSF组件都包含在父<f:view>
标记内(该父标记位于由UIViewRoot
组件表示的幕后)。
您需要更改JSP文件以匹配以下基本模板(请注意<f:view>
):
<%@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 with JSF components</title>
</head>
<body>
<h:outputText value="JSF components here." />
</body>
</html>
</f:view>