在下面的JSF页面中,我试图打印出下面的表视图,并在浏览器中获得单行空原始文件。你觉得我做错了什么?
-----------------------
Up Time: | 3 |
Cpu Load 1 Min: | 2 |
Cpu Load 5 Min: | 4 |
Cpu Load 15 Min:| 5 |
Free Mem: | 6 |
Tot Mem: | 9 |
Dae Mem: | 1 |
-----------------------
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<f:view><html>
<head>
<title>
PmCounters Web Interface
</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css"/>
<meta http-equiv="Content-Script-Type" content="text/javascript"/>
<meta http-equiv="X-UA-Compatible" content="IE=8"/>
<!-- Set GWT property to get browsers locale -->
<meta name="gwt:property" content="locale=en_US">
<base href="http://10.64.85.10/opennms/" />
<!-- -->
<link rel="stylesheet" type="text/css" href="http://10.64.85.10/opennms/css/styles.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://10.64.85.10/opennms/css/gwt-asset.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://10.64.85.10/opennms/css/onms-gwt-chrome.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://10.64.85.10/opennms/css/print.css" media="print" />
</head>
<body>
<center>
<br><br><br>
<h:dataTable value="#{sysInfoTableDAO.sysInfoItem}" var="row" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" rows="4" width="50%" dir="LTR" frame="hsides" rules="all" summary="DAE PM Counters Display." >
下面是我生成此表的位置。 St一定是错的。
<%--
HERE is the place where the table should be printed
--%>
<h:panelGrid columns="2">
<h:outputText value="Up Time:"/>
<h:outputText value="#{row.getUpTime()}"/>
<h:outputText value="Cpu Load 1 Min:"/>
<h:outputText value="#{row.getCpuLoad1min()}"/>
<h:outputText value="Cpu Load 5 Min:"/>
<h:outputText value="#{row.getCpuLoad5min()}"/>
<h:outputText value="Cpu Load 15 Min:"/>
<h:outputText value="#{row.getCpuLoad15min()}"/>
<h:outputText value="Free Mem:"/>
<h:outputText value="#{row.getCpufreeMem()}"/>
<h:outputText value="Tot Mem:"/>
<h:outputText value="#{row.getTotMem()}"/>
<h:outputText value="Dae Mem:"/>
<h:outputText value="#{row.getDaeMem()}"/>
</h:panelGrid>
</h:dataTable>
</center>
</body></html></f:view>
答案 0 :(得分:0)
换句话说,JSF标记没有被解析并且在生成的HTML输出中显得简单?这只能意味着尚未调用FacesServlet
。您需要确保浏览器地址栏中显示的请求网址与FacesServlet
中定义的web.xml
的网址格式相匹配。如果是*.jsf
,那么您应该按page.jsf
而不是page.jsp
打开页面。
无关的具体问题,当你用“jsf-2.0”标记问题时,你似乎在使用JSF 2.0。那你为什么要使用遗留JSP而不是它的继承者Facelets,这是自JSF 2.0以来的默认视图技术?