javax.faces.view.facelets.FaceletException: Ошибка синтаксического анализа /my.xhtml: трассировка ошибки [строка: 42] Префикс "f" для элемента "f: facet" не связан - PullRequest
4 голосов
/ 08 марта 2012

Я хотел бы создать таблицу, которая может отображать данные из базы данных на странице JSF.Я нашел этот код:

<h:dataTable value="#{bookStore.items}" var="store">
  <h:column>
    <f:facet name="header">
      <h:outputText  value="#{msg.storeNameLabel}"/>
    </f:facet>
    <h:outputText value="#{store.name}"/>
  </h:column>
  <h:column>
    <f:facet name="header">
      Subject
    </f:facet>
    <h:outputText value="#{store.subject}"/>
  </h:column>
  <h:column>
    <f:facet name="header">
      <h:outputText  value="#{msg.storePriceLabel}"/>
    </f:facet>
    <h:outputText value="#{store.price}"/>
  </h:column>
</h:dataTable> 

Когда я использую этот код, я получаю это сообщение об ошибке в Netbeans:

javax.faces.view.facelets.FaceletException: Ошибка синтаксического анализа / мой.xhtml: трассировка ошибок [строка: 42] Префикс "f" для элемента "f: facet" не связан

Если я заменил тег f на тег h,идти на работу?Или мне нужно включить библиотеку тегов f?

Ответы [ 3 ]

16 голосов
/ 08 марта 2012

Вы должны включить правильный taglib для префикса f.

Вот пример страницы JSF 2.2 Facelet:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:f="http://xmlns.jcp.org/jsf/core">

...
</html>

Если вы все еще используете JSF 2.0/2.1, используйте java.sun.com домен вместо xmlns.jcp.org домена в пространстве имен XML.

Я рекомендую прочитать руководство по JSF, вы можете найти ссылки на нашей вики-странице JSF .

2 голосов
/ 08 марта 2012

Замена f на h не будет работать, так как нет h:facet (в html taglib JSF, который, вероятно, будет присвоен префиксу h). Вам нужно будет включить соответствующий taglib (ядро JSF) и назначить его для префикса f.

0 голосов
/ 08 марта 2012

Включить taglib.<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...