我正在使用一个maven项目,该项目将WAR存档部署到将EAR存档部署到JBoss服务器的项目中。
这是我的Facelets代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>title</title>
</h:head>
<h:form>
<h:body>
<input type="button" value="babap"></input>
<h1>Ueberschrift</h1>
<p>paragraph</p>
<h:outputText value="outputText" />
text at bottom
</h:body>
</h:form>
</html>
除<h:outputtext>
外,一切似乎都有效。它根本没有出现在网站上。这是怎么造成的,我该如何解决?
答案 0 :(得分:1)
除了h:outputtext之外,一切似乎都有效。它根本没有出现在网站上。
请求网址(浏览器地址栏中显示的网址)是否与FacesServlet
的网址格式匹配?如果没有,那么它将不会被调用,因此所有JSF工作都不会被执行。
您需要确保请求网址与FacesServlet
的网址格式相匹配。如果它映射到*.jsf
,则按/foo.jsf
而不是/foo.xhtml
打开页面。或者,更好的是,只需将FacesServlet
中的web.xml
的网址格式更改为*.xhtml
即可。这样您就不必担心虚拟URL。