此XML文件似乎没有与之关联的任何样式信息。文档树如下所示。
<html xmlns="http://www.w3c.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
<link type="text/css" rel="stylesheet" href="themes/bluesky/skin.css"/>
</h:head>
<h:body>
<center>
<p:panel header="Login Form" style="width: 350;">
<h:form>
<h:panelGrid columns="2" cellpadding="2">
<h:outputLabel for="#{UserManagedBean.username}" value="UserName"/>
<h:inputText value="#{UserManagedBean.username}" label="UserName"/>
<h:outputLabel for="#{UserManagedBean.password}" value="Password"/>
<h:inputSecret value="#{UserManagedBean.password}"/>
<h:commandButton type="submit" value="Login" action="#{UserManagedBean.login}"/>
</h:panelGrid>
</h:form>
</p:panel>
<div>
<h:messages/>
</div>
</center>
</h:body>
</html>
这可能是什么问题?我真的不知道。
答案 0 :(得分:1)
此XML文件似乎没有与之关联的任何样式信息。文档树如下所示。
每当您请求X(HT)ML文件时,这是一个典型的MSIE警告消息,该文件没有XSL样式表(基本上类似于CSS的CSS)。
您在Facelet页面上获取此信息只能表示请求网址与您在网络应用FacesServlet
中定义的web.xml
的网址格式不匹配。换句话说,FacesServlet
从来没有机会运行,解析Facelet文件并完成所有JSF工作以生成一堆HTML,以便webbrowser有一些合理的工作。
此问题有两种解决方案:
修复您的请求网址(浏览器地址栏中的网址),以匹配FacesServlet
中web.xml
的网址格式。如果是<url-pattern>*.jsf</url-pattern>
,那么您需要将.xhtml
网址中的.jsf
扩展名替换为FacesServlet
。
将<url-pattern>*.xhtml</url-pattern>
的网址格式更改为<center>
。这样您就不必担心会意外地看到XHTML源代码。
请注意,所有这些都与
哦,在我忘记之前,自1998年的HTML4以来,margin: 0 auto;
元素已被弃用。请勿使用它。使用CSS {{1}}。尽量避免阅读超过2年的教程/书籍。