2013-10-10 6 views
1

Я хочу, чтобы экспортировать таблицу данных в формате CSV, формат PDF в primefaces 4.0 .Для этого я использовал следующий код: таблицаDataTable экспорт не работает в Primefaces 4,0

<p:dataTable var="valuesTable" value="#{userBean.groupResultList}" 
    paginator="false" id="valuesTable" resizableColumns="true" 
    rendered="#{not empty userBean.groupResultList}"> 
    <p:column headerText="Group" id="grp">             #{valuesTable.groupName}</p:column> 
    <p:column headerText="Technical Knowledge" id="tk"> 
              #{valuesTable.tkValue} 
          </p:column> 
    <p:column headerText="Project Management" id="pm"> 
               #{valuesTable.pmValue} 
          </p:column> 
    <p:column headerText="Growth" id="ga"> 
               #{valuesTable.gaValue} 
          </p:column> 
    <f:facet name="footer"> 
     <h:commandLink> 
      <p:graphicImage value="/images/xml.jpeg" width="20" height="20" /> 
      <p:dataExporter target="valuesTable" type="xml" fileName="Data_XML" /> 
     </h:commandLink> 
    </f:facet> 
</p:dataTable>  

отображает данные правильные данные в каждой клетке, когда Я запускаю приложение. Но когда я пытаюсь экспортировать его в формате csv или pdf, а не экспортировать фактические числа (или значения объекта), он экспортирует «# {valuesTable.groupName}» «# {valuesTable.tkValue}», «# {valuesTable .pmValue} "," # {valuesTable.gaValue} "для каждого объекта в файле csv.

CSV файл Содержание:

#{valuesTable.groupName} #{valuesTable.tkFormatedValue} #{valuesTable.pmFormatedValue} #{valuesTable.gaFormatedValue} 

Таблица данных Содержание:

Group Name Technical Knowledge Project Management Growth 

India   .8      .7   1.0 

Я не не знаю, почему он экспортирует данные таблицы таким образом ..

Пожалуйста, помогите

С благодарностью

ответ

3

У меня была аналогичная проблема с экспортером dataTable. Вы должны использовать outputText вроде этого:

<h:outputText value="#{valuesTable.tkValue}"/> 

внутри всех тегов столбцов, чтобы увидеть значение правильно. Ваша колонка стала бы:

<p:column headerText="Technical Knowledge" id="tk"> 
    <h:outputText value="#{valuesTable.tkValue}"/> 
</p:column> 

Заменить все столбцы и попробовать это! Надеюсь, это поможет!

А также я думаю, что заголовки не в порядке. Вы должны использовать F: фацета тег так:

<p:column id="tk"> 
    <f:facet name="header"> 
     <h:outputText value="Technical Knowledge" /> 
    </f:facet> 
    <h:outputText value="#{valuesTable.tkValue}"/> 
</p:column> 

Теперь вы должны увидеть заголовки в файле экспорта CSV.

+0

Благодаря Buddy..its работать .. !!! – Abhay

+0

Добро пожаловать! –

0

DataTable экспорт не работает в Primefaces 4.0

Шаг 1: Вам нужно добавить банки для экспорта CSV, PDF, файл. IText-1.1.4.jar

Шаг 2: DataExplorar.xhtml

<?xml version="1.0" encoding="UTF-8"?> 
<!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" 
xmlns:f="http://java.sun.com/jsf/core" 
xmlns:p="http://primefaces.org/ui"> 

<p:panel header="Generate Report "> 

<div> 
<h:commandLink> 
    <p:graphicImage value="/images/pdf.png" 
     style="width:30px; hight:30px;" /> 
    <p:dataExporter type="pdf" target="tb1" 
     fileName="fileName" /> 
</h:commandLink> 

    <h:commandLink> 

    <p:graphicImage value="/images/excel.png" 
    style="width:25px; hight:30px;" /> 
    <p:dataExporter type="xls" target="tb1" 
    fileName="fileName" /> 
    </h:commandLink> 
</div>   
</p:panel> 
+0

Нет, '' работает для dataTables в Primefaces 4. Все, что мы должны делать после включения необходимых jars в CLASSPATH, не должно использовать его в атрибуте paginatorTemplate для тега таблицы даты, но в нижний колонтитул 'header' /' компонента "facet" этой таблицы. – Omar

Смежные вопросы