Jsf 未捕获引用错误:未定义PrimeFaces

Jsf 未捕获引用错误:未定义PrimeFaces,jsf,primefaces,datagrid,Jsf,Primefaces,Datagrid,我试图用primefaces显示dataGrid,但它不能正确显示: 下面是code.xhtml: <!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:ui="http://jav

我试图用primefaces显示dataGrid,但它不能正确显示:

下面是code.xhtml:

<!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:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">

<ui:composition template="/WEB-INF/templates/basic.xhtml">
    <ui:define name="content">
    <h:form>
        <p:dataGrid value="#{data.result}" columns="3" rows="10" paginator="true"
            paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
            rowsPerPageTemplate="5,10,15">
        <p:panel header="#{article.name}" style="text-align:center">
            <h:panelGrid columns="1" style="width:100%">
                <p:graphicImage value="/Images/linux.jpg"/>
                <h:outputText value="#{article.description}" />
            </h:panelGrid>
        </p:panel>
        </p:dataGrid>
    </h:form>
    </ui:define>
</ui:composition>
</html>

My web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name>PrimeFaces</display-name>
  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
  </servlet-mapping>
  <context-param>
    <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
  </context-param>
  <context-param>
    <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
    <param-value>resources.application</param-value>
  </context-param>
  <listener>
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
  </listener>
  <context-param>
    <param-name>primefaces.THEME</param-name>
    <param-value>bootstrap</param-value>
  </context-param>
</web-app>

素面
Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
*.xhtml
状态保存方法:“客户端”或“服务器”(=默认值)。参见JSF规范2.5.2
javax.faces.STATE_保存方法
客户
javax.servlet.jsp.jstl.fmt.localizationContext
资源.应用
com.sun.faces.config.ConfigureListener
主题
独自创立
我已经在
MyProject/WebContent/WEB-INF/lib/primefaces-4.0.jar
中安装了
primefaces-4.0.jar
,然后右键单击它>
buildpath
Configure Build Path…
以便在
MyProject/Java Resources/Libraries/primefaces-4.0.jar>中有一个
primefaces-4.0.jar
。我对bootstrap-1.0.10.jar做了同样的操作

为什么不起作用

如果你需要更多的信息,告诉我

---更新---

要显示页面的网络,请执行以下操作:


PrimeFaces安装得很好(否则您根本看不到这些分页器;生成的HTML输出也应该确认这一点,您不应该得到未解析的
标记)。只是CSS、JS和图像文件未能提供给客户端。检查浏览器的HTTP流量监视器应该会提供线索。我同意,我认为它安装正确,这就是为什么我不理解这种行为。例如,
(1/1)pp1pp[10v]
看起来像:
,因此似乎有一种样式,但没有显示出来。我知道。这正是我在评论的前半部分所说的。也许你不明白我的评论?你看了我评论的后半部分了吗?好的,对不起,我误解了,这是css:
div{display:block;}
。但这并不能解决我的问题。这很奇怪。我重复一遍:只是CSS、JS和图像文件未能提供给客户端。检查浏览器的HTTP流量监视器可以提供线索。也许CSS/JS服务被开发/配置不好的servlet过滤器阻塞了?或者可能由于缺少
,所以
中根本没有CSS/JS文件?也许图像URL是完全错误的?等等。只需检查这些资源的响应状态/主体。