我有一个带有JSF标签的Facelet文件来显示标签,输入字段和按钮,但是当我运行它时,这些部分在浏览器中是不可见的。
<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!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"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title> supply a title</title>
</h:head>
<h:body>
<h:form>
Name:
<h:outputLabel value="First Name:"> </h:outputLabel>
<h:inputText id="name" value="#{DataForm.name}"></h:inputText>
<h:commandButton value="Doctor Register" action="#{DataForm.submit}"> </h:commandButton>
</h:form>
</h:body>
</html>
这是如何引起的,我该如何解决?我正在使用netbeans 6.9.1 Glassfish 3.1。
答案 0 :(得分:2)
当未调用FacesServlet
时,可能会发生这种情况。它是负责解析Facelet文件并完成所有JSF工作的人。
您需要确保您的请求网址(您在浏览器地址栏中看到的网址)与FacesServlet
中映射的web.xml
的网址格式相匹配。如果它例如映射到*.jsf
的URL模式,那么您需要确保在浏览器中打开页面
或者当您想要在每个FacesServlet
请求上调用*.xhtml
时,您需要相应更改web.xml
中的映射的网址格式(推荐)
<url-pattern>*.xhtml</url-pattern>